首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

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

2012-07-30 
char类型转换问题,100分送上void JNICALL defabc(jint class_data_len, const unsigned char* class_data,

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*,也需要转换

热点排行