C++ char * 和char之间的一些转换有关问题
C++ char * 和char之间的一些转换问题
这样会报写入位置时发生访问冲突错误,但下面这样却正常
还有一点,弹出来的提示框框后面带了问号,似乎ccccc的值为“d ? ??”
为什么呢?
------解决方案--------------------
char *ccccc=(char *)malloc(sizeof(char));
ccccc="11111111";
*ccccc = (char)100;
是在修改 "11111111" 这个只读内存的内容.
char *ccccc=(char *)malloc(sizeof(char));
*ccccc = (char)100; 修改的是 malloc 出来的内存.
ccccc="11111111";
char *ccccc=(char *)malloc(sizeof(char));
*ccccc = (char)100;
::MessageBox(hWnd,ccccc,"花",0);
字符串以 '\0' 结尾, 否则后面的内容随机.
------解决方案--------------------
cccc的地址被你改变了
char *ccccc=(char *)malloc(sizeof(char));
ccccc="11111111";
*ccccc = (char)100;
这样会报写入位置时发生访问冲突错误,但下面这样却正常
char *ccccc=(char *)malloc(sizeof(char));
*ccccc = (char)100;
ccccc="11111111";
还有一点,弹出来的提示框框后面带了问号,似乎ccccc的值为“d ? ??”
char *ccccc=(char *)malloc(sizeof(char));
*ccccc = (char)100;
::MessageBox(hWnd,ccccc,"花",0);
为什么呢?
c++ char char
------解决方案--------------------
char *ccccc=(char *)malloc(sizeof(char));
ccccc="11111111";
*ccccc = (char)100;
是在修改 "11111111" 这个只读内存的内容.
char *ccccc=(char *)malloc(sizeof(char));
*ccccc = (char)100; 修改的是 malloc 出来的内存.
ccccc="11111111";
char *ccccc=(char *)malloc(sizeof(char));
*ccccc = (char)100;
::MessageBox(hWnd,ccccc,"花",0);
字符串以 '\0' 结尾, 否则后面的内容随机.
------解决方案--------------------
cccc的地址被你改变了