首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

C语言字符串IO

C11标准中新增的gets_s函数也可以代替gets函数,该函数与gets函数很接近,而且可以替换现有代码中的gets函数。...gets_s()函数 C11新增的gets_s函数和fgets函数类型,用一个参数限制读入的字符数。...gets_s函数和fgets函数的区别是: gets_s()只从标准输入中读取数据,所以不需要第三个参数。 如果geets_s()函数读取到换行符,会丢弃它。...注意fgets函数会保留出入末尾的换行符作为字符串的一部分,要编写额外的代码将其替换成空字符,但是只要输入行未超过最大字符数,gets_s和gets函数几乎一样,完全可以用gets_s函数替换gets。...如果输入太长,使用gets()不安全,它会擦写现有的程序,存在安全隐患,但是使用gets_s()函数很安全,但是由上面可知超出限定后gets_s()函数可能会中止或者退出程序,所以要知道如何编写特殊的“

4.6K10

要点3:输入函数对比与自定义输入方式

从控制台获取输入,不考虑宽字符): int scanf( const char *format, ... ); int getchar(void); char *gets( char *str ); char *gets_s...getchar 可以读取到换行符; 常用于暂停程序,或丢弃缓冲区剩余字符; gets 读取一行,遇到换行符,直接丢弃换行符; 会自动在字符串末尾添加\0; 返回字符串指针,读取失败返回null; gets_s...gets_s 该函数是c11才有的,且为拓展函数,使用方式除了可以设置读取的字符数之外和gets函数用法一样。...fgets 这个函数除了可以从标准输入读取字符串之外,还可以从文件中读取,而且可以指定读取字符个数,比gets_s更加灵活易用,利用fgets,但是fgets不会自动丢弃超过字符个数之外的行缓冲区数据,

76040

实验设备管理系统C语言_实验室设备管理系统代码

cls"); switch (choice) //以三种方式查询 { case '1': { printf("\n请输入仪器名称:"); //请输入仪器名称 char name[20]; gets_s...按任意键返回."); //按任意键返回 _getch(); break; } case '2': { printf("\n请输入仪器编号:"); //请输入仪器编号 char id[20]; gets_s...//按任意键返回 _getch(); break; } case '3': { printf("\n请输入仪器种类:"); //请输入仪器种类 int a = 0; char sort[2]; gets_s...Information* Modify(Information* head) { system("cls"); printf("\n请输入仪器名称:"); //请输入仪器名称 char name[20]; gets_s...system("cls"); switch (choice) { case '1': { printf("\n输入要删除的仪器名称:"); //输入要删除的仪器名称 char name[20]; gets_s

2K20
领券