读书人

char类型转换有关问题100分送下

发布时间: 2012-07-30 16:19:05 作者: rapoo

char类型转换问题,100分送上
void JNICALL defabc(jint class_data_len, const unsigned char* class_data,
jint* new_class_data_len, unsigned char** new_class_data)
{
char old_data[] = class_data;//这里如何转换成char[]类型
char result[1024];
unsigned char key[] = "aaaaaaa-10110101";
AES aes(key);
aes.Bm53InvCipher(old_data, result);//解密方法,void Bm53InvCipher(char *inut, char *output);
printf("%s\n",result);

*new_class_data_len = strlen(result)//长度.....
*new_class_data = result//这里如何转换.....
}

注:我对C++基本上是皮毛,主要是搞java的,工作中要写一个dll,不得不写c++,请各位兄台帮忙.

[解决办法]

C/C++ code
void JNICALL defabc(jint class_data_len, const unsigned char* class_data,  jint* new_class_data_len, unsigned char** new_class_data){  char* old_data =(char*) malloc(class_data_len+1);//如果函数结束后不需要该变量就使用free释放掉  strcpy(old_data,class_data);//如果不是字符,而是数据的话就使用memcpy  char result[1024];  unsigned char key[] = "aaaaaaa-10110101";  AES aes(key);  aes.Bm53InvCipher(old_data, result);//解密方法,void Bm53InvCipher(char *inut, char *output);  printf("%s\n",result);  *new_class_data_len = strlen(result)//长度.....  *new_class_data = result//这里如何转换?什么意思?}
[解决办法]
探讨

感谢 (笨笨熊)

C/C++ code

*new_class_data_len = strlen(result)//长度.....,这里不知道有没有什么问题
*new_class_data = result//这里的result是char[]格式的,*new_class_data是unsigned char*,也需要转换

读书人网 >C++

热点推荐