请问while (*s)是什么意思
s指向了一个字符串,while不是成立或者等于1才继续循环吗,while(*s)是什么意思啊?S的字符串是ABCDEFG...
s指向了一个字符串,while不是成立或者等于1才继续循环吗,while (*s)是什么意思啊?S的字符串是 ABCDEFG
展开
4个回答
展开全部
while(*s)意思就是字符串输出完就结束循环。
它需要第二个参数来说明最大读入字符数,如果这个参数值为n, fgets()就会读取最多n-1 个字符 或者读完一个换行符为止,由这二者中最先满足的那个结束输入
如果fgets()读取到换行符,就会把它存到字符串里,而不是像gets() 那样丢弃换行符。它还需要第三个参数来说明读哪个文件,从键盘上读数据时,可以使用stdin作为该参数 如:fgets( name , Max ,stdin);
缺点:由于fgets()把 \n 也当做输入字符,所以输出时,每遇到 \n 就自动换行,可以用strchr() 来定位和删除换行符。
扩展资料:
字符串的输入分为两步:字符串存储空间的分配;利用输入函数来读入字符串。
当读入一个串时, 第一件要做的事情是分配一块空间来存放串。这意味着申请足够的存贮空间存放我们读入的无论多长的串。最简单的方法是在说明语句中包括明确的数组长度说明。
一旦已经为一个字符串申请了空间, 就可以读入这个字符串了。简单介绍C语言和C++语言的输入函数。
参考资料来源:百度百科-串输入输出
展开全部
字符串是以 '\0'结束的 当 指针 s指向最后一个 即是 '\0'是 *s='\0' 也等于 0 即是假的 结束循环
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
除了0以外的所有字符和数字都是1;
字符串的结尾是'\0',也就是0
while(*s)意思就是字符串输出完就结束循环
字符串的结尾是'\0',也就是0
while(*s)意思就是字符串输出完就结束循环
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
*s指向字符串中所对应的字符,一开始指向A,当循环里面s++时,*s指向B,依次类推,当指向字符串的结束符'\0'时,循环结束
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询