字符指针的指针名输出为字符串,为什么输出结尾总是带了一些特殊字符呢?
char *buffer = new char[3];
buffer[0] = '1';
buffer[1] = '2';
buffer[2] = '3';
cout << buffer;
输出如下:
字符指针的指针名输出为字符串,为什么输出结尾总是带了一些特殊字符呢?
char *buffer = new char[3];
buffer[0] = '1';
buffer[1] = '2';
buffer[2] = '3';
cout << buffer;
输出如下:
字符串必须拥有结束符,'\0',否则将会一直输出直到出现'\0',你输出了buffer[3]及以后的内容
你给字符串赋值的方法太笨拙了,以下代码可能比较适合你
char *buffer = new char[3];
strcpy(buffer, "123");
cout << buffer;