读书人

关于字符数组中存在字符串结束符的有关

发布时间: 2013-11-05 14:40:42 作者: rapoo

关于字符数组中存在字符串结束符的问题
如果字符数组中存在字符串结束符,如下所示:
char chaStr = {'1','3','\0','d','s'};
string lstr(chaStr);
字符串lstr得到的是13,怎么让lstr的值为13\0ds?
[解决办法]


char chaStr[] = {'1','3','\0','d','s'};
string lstr(chaStr, sizeof(chaStr));

[解决办法]
例如:
char chaStr[] = "13\000ds\000\000"; //‘\0’是字符串的结束符的哦!
int i=0;
int c=0,c0=0;
while((c = chaStr[i++])!=0
[解决办法]
c0 != 0 )
{

if(c)
putchar(c);

if(c0==0 && c==0)break;
c0 = c;
if(c0 == 0)
putchar('\n');

}
[解决办法]
引用:
如果字符数组中存在字符串结束符,如下所示:
char chaStr = {'1','3','\0','d','s'};
string lstr(chaStr);
字符串lstr得到的是13,怎么让lstr的值为13\0ds?


string lstr;
lstr.resize(5);
for(int i=0; i<sizeof(chaStr); ++i)
{
lstr[i] = chaStr[i];
}

读书人网 >C语言

热点推荐