C++中字符串输出问题
程序代码:#include <iostream>
#include <string>
using namespace std;
int main()
{
int i = 0;
char *name = new char[];
cin>>name;
char* first = new char[strlen( name ) + 1 ];
strcpy( first,name );
char p='\0';
while(*first != p)
cout<<first[i++];
cout<<first<<endl;
return 0;
}我想的是在while那句的末尾编译器会自动添加字符'\0',因为给定的空间刚好够,strlen( name ) + 1,当输出碰到'\0'会自动停止,然而编译时后不自动停止还有个想法就是在取长度时候加一,即为strlen( name ),会不会正确执行而不越位.





我也是菜鸟,没事交交我。