puts是直接输出字符串,到\0为止scanf,gets等等输入字符串后,末尾都会自动加\0
a=(char**)malloc(3*sizeof(char *));
这个和输出终端的字符串编码有关系。如果你连续输出的两个CHAR合起来是个中文字的编码,终端就会理解为中文并显示。
int main(){ char *si = "C语言";si = new char[10];si ="学习C语言";printf("%s\n",si);return 0;}