对于字符串的处理函数gets()和puts()的结束标志有必要讨论一下
gets()函数是从标准输入设备读取字符串直到换行符结束,但是换行符会被丢弃,并且在末尾加上一个字符串结束标志
'\0' ,而与其相对应的puts()函数是将从标准输入设备输入的字符串打印到屏幕上,但是在打印的时候它会做一件事情就是将刚刚输入时所得到 '\0'自动转换成换行符,就是在输出字符串后自动换行。 一个简单的应用: #include<stdio.h> #include<stdlib.h> int main() { int i = 0,j = 0; char arr[50][10] = {0}; //定义一个二维数组目的是对它进行初始化 for (i = 0; i < 5; i++) //如果这个数组很长,但是操作者想提前结束是该怎么办? { gets(arr[i]); //使用gets()接收字符 if (strcmp(arr[i]," ") == 0) //如果想停止就输入空格便停止 { break; } } for (j = 0; j < i; j++) //输出想得到的字符 { puts(arr[j]); } system("pause"); return 0; } 遇到很长的数组在循环中想提前结束的话这也是一种办法!