Leng_Mo 发表于 2021-9-23 12:11:58

输出该字符串空字符之前所有的字符(包括空字符

输出该字符串空字符之前所有的字符(包括空字符)#include<stdio.h>
#include<string.h>

int main()
{
        char str[]="1,,4458, 64" ;
       
        for(int i=0;i<strlen(str);i++)
        {
                if(str==0)
                {
                        for(int a=0;a<=i;a++)
                        {
                                putchar(str);
                        }
                        break;
                }
        }
       
        return 0;
}

jhq999 发表于 2021-9-23 12:22:35

i<strlen(str)//strlen函数不把空字符计入字符串长度

jackz007 发表于 2021-9-23 12:29:37

本帖最后由 jackz007 于 2021-9-23 12:31 编辑

#include<stdio.h>

int main(void)
{
      char str[] = "1,,4458, 64"                     ;
      for(int i = 0 ; str ; i ++) putchar(str) ;      
}

Leng_Mo 发表于 2021-9-23 14:17:43

jackz007 发表于 2021-9-23 12:29


for语句两个分号中间的不是条件判断吗?我有点没看懂,

jackz007 发表于 2021-9-23 15:51:34

本帖最后由 jackz007 于 2021-9-23 15:54 编辑

Leng_Mo 发表于 2021-9-23 14:17
for语句两个分号中间的不是条件判断吗?我有点没看懂,

      是的,只要 str[ i] 不是空字符 '\0',str 的逻辑值就是 true,只有 str[ i] 为空字符 '\0' 时, str 的逻辑值才是 false,也就是说,只要 str[ i] 不为空字符,循环条件就成立,循环就会继续。
页: [1]
查看完整版本: 输出该字符串空字符之前所有的字符(包括空字符