#include <stdio.h> //这个头文件包含gets()函数,这个函数在ISO/IEC 9899 2011(C11)标准中被移除int main(void){ char str1[5]; //不要char*p,然后gets(p),这是错误的,因为p没有指向有效的内存,它可能指向任何非法地址 // 地方的未知大小的内存块,这样以来,就可能修改了不属于本程序的内存的内容 gets(str1); printf("%s\n", str1); return 0;}#include <stdio.h>//gets_s()用法#define CH 20int main(void){ char ch[CH]; printf("请输入你的名字:\n"); gets_s(ch,CH); //这里不能用gets_s(ch); printf("这是你的名字:%s\n", ch); return 0;}#include <iostream>#include <cstdio>using namespace std;int main(){ char str[100]; gets(str); cout<<str<<endl; return 0;}原文:http://www.cnblogs.com/luoquan/p/5295225.html