读书人

新手,关于itoa的有关问题

发布时间: 2012-03-05 11:54:02 作者: rapoo

新手,关于itoa的问题
大家帮我看看为什么这段代码会出错,谢谢
char *string= " ";
char timDesc[]= " ";
::itoa(11,string,10);//这个地方出错了
::strcat(string,timDesc);

[解决办法]
http://community.csdn.net/Expert/topic/5341/5341090.xml?temp=.8881494
[解决办法]
char *string= " ";
=========
char string[1024];
::itoa(11,string,1024);
[解决办法]
char *string= " ";
char timDesc[]= " ";
都没有分配到空间,所以没法作为左值来用
[解决办法]
char *string= " "; //没分配空间
[解决办法]
=======================
char string[4]= " ";
但我不明白为什么这里只能有三个空格,而不是四个,四个的话,编译器会报错,我用的是VS2003的编译器
=======================

string才4个空间,可以放“123”(字符串最后已结束符 '\0 '结束也占一位)

char string[4] = {0};
strcpy( string, "123 " );
[解决办法]
char string[4]= " ";
但我不明白为什么这里只能有三个空格,而不是四个,四个的话,编译器会报错,我用的是VS2003的编译器
--------------------------------------------------
因为字符串后面自动加一个 '\0 '表示结束

读书人网 >C++

热点推荐