做毕业设计个人网站任务书,汕尾北京网站建设,公司网站制作重庆,wordpress79元主题满意答案wkmpbg846推荐于 2018.02.27采纳率#xff1a;45% 等级#xff1a;8已帮助#xff1a;362人gets():原型:char *gets(char *buffer) ;功能:从stdlin中获取获取字符串一直到换行符或者遇到EOF为止#xff0c;但换行符不被录取#xff0c;会将换行符替换成‘\0’来…满意答案wkmpbg846推荐于 2018.02.27采纳率45% 等级8已帮助362人gets():原型:char *gets(char *buffer) ;功能:从stdlin中获取获取字符串一直到换行符或者遇到EOF为止但换行符不被录取会将换行符替换成‘\0’来表示字符串的结束返回值如果读取成功会返回buffer指针如果遇到EOF或者发生错误会返回NULL当遇到NULL需要调用ferror()和feof()来判断是遇到EOF还是发生了错误ps:该函数读取一直读到遇到换行符为止所以很容易发生溢出的情况如果发生溢出会覆盖堆栈中的内容改变不相关的变量我们可以使用fget()替换gets(),为了向后兼容不会将换行符放入缓冲区中。[cpp] view plaincopy#include stdio.h //这个头文件包含gets()函数int main(){char str1[15];gets(str1);printf(%s\n, str1);getchar() ;return 0;}此时就可以从键盘上读取一个字符串到str1中ps:scanf(%s, str1) ;这样也可以输入字符串如果遇到空格符就会认为字符串结束了空格后的字符作为下一个字符串但gets()会遇到换行符为止*****************************getchar():功能这个函数由宏#define getchar() getc(stdin) 从标准输入中读取字符等待用户输入字符串一直到换行符为止用户输入的字符将会存入键盘缓冲区中包括换行符,他会读取第一个字符返回第一个字符的ASCII码getchar()会从缓冲区中读取剩下的字符一直到读完为止然后等待如果输入换行符ps:getch()和getchar()差不多但getch()在用户输入后就立即返回了不等待用户输入换行符,会返回输入字符的ASCII码如果错误就-1这个经常用于调试中[cpp] view plaincopy#include #include int main(){int c ;int a ;a getchar() ;while((c getchar()) ! \n){printf(%c, c) ;}getchar() ;return 0 ;}fgets():函数原型char *fgets(char *buf, int bufsize, FILE *stream);从文件结构指针stream中读取数据每次读取bufsize-1个数据第bufsize个赋值成\0如果不足bufsize个数据则返回如果遇到eof或者错误则返回Null,如果成功就返回buf地址[cpp] view plaincopy#include #include #include int main(){FILE *stream;char string[] Love, I Have\nSince you can do it.;char msg[20];/**FILE * fopen(const char * path,const char * mode);*以w的方式以读写的方式打开如果有文件则清零没有则要新建一个新的 */stream fopen(DUMMY.txt, w);/**size_t fwrite(const void* buffer, size_t size, size_t count, FILE* stream);*buffer:代表要写入的数据*size:写入每项的字节数*count:写入的项数*stream:要写入的字节流*/fwrite(string, strlen(string), 1, stream);/* 定位到文件的开始 */fseek(stream, 0, SEEK_SET);fgets(msg, 6, stream);//此时文件指针会第六个字符printf(%s\n, msg);fgets(msg, 20, stream);printf(%s, msg);fseek(stream, 0, SEEK_SET);fgets(msg, 23, stream);printf(%s, msg);fclose(stream);system(pause) ;return 0;}11分享举报