求高手解决解决思路
求高手解决
如下的代码片段
求解得到sign的好办法
------解决方案--------------------
char res[33]={'\0'};
改成
static char res[33]={'\0'};
------解决方案--------------------
static char res[33]={'\0'};
如下的代码片段
char* s = "hello";
char* MD5_Encrypt(const char* src)
{
char *dest;
struct MD5Context md5c;
unsigned char ss[16];
char res[33]={'\0'};
char tmp[3]={'\0'};
int i;
MD5Init( &md5c );
MD5Update( &md5c, src, strlen(src) );
MD5Final( ss, &md5c );
for( i=0; i<16; i++ ){
sprintf(tmp,"%02X", ss[i] );
strcat(res,tmp);
}
dest = res;
// printf("sign: %s\n",res);
// printf( "\t%s\n", src );
puts(dest); //这里是ok的
return dest;
}
char* sign = MD5_Encrypt(s);
puts(sign); //这里获取不到结果
求解得到sign的好办法
------解决方案--------------------
char res[33]={'\0'};
改成
static char res[33]={'\0'};
------解决方案--------------------
static char res[33]={'\0'};