标签:fgets else std char 编程 amp return 修改版本 pre
s_gets函数的修改版本
1 char *s_get(char*st,int n) //输入,指针法替代数组表示 2 { 3 char *pt; 4 5 pt = fgets(st,n,stdin); 6 if(pt) 7 { 8 while( *st != ‘\n‘ && *st!= ‘\0‘) 9 st++; 10 if(*st = ‘\n‘) 11 *st = ‘\0‘; 12 else 13 while(getchar() != ‘\n‘) 14 continue; 15 } 16 return pt; 17 } 18
1 char *s_get1(char*st,int n) //第三版,使用strchr函数 2 { 3 char *pt,*k1,*k2; 4 5 pt = fgets(st,n,stdin); 6 if(pt) 7 { 8 9 k1 = strchr(st,‘\n‘); 10 k2 = strchr(st,‘\0‘); 11 12 13 if(k1 != k2) 14 *k1 = ‘\0‘; 15 else 16 while(getchar() != ‘\n‘) 17 continue; 18 } 19 return pt; 20 } 21
第三个版变动得有点大,关键是使用strchr这个函数,这是cpp这本书复习题给我的思路。c向来是一门自由的语言,无数的编程人员一直致力于为他添砖加瓦,让他更加便捷。函数给了使用c的人极大的自由,前人种树后人乘凉,我在学习c语言的过程中,一直是一个C语言的搬运工。
标签:fgets else std char 编程 amp return 修改版本 pre
原文地址:https://www.cnblogs.com/mirrormy/p/12269715.html