飞翔的小鸟 发表于 2017-2-23 14:27:30

请问这两段代码有什么区别,运行结果一样

for (i=0;(*ptr)!='\0';i++)
        {
                if ((*ptr)!=c)
                {
                        s=*ptr;
                }
                else
                {
                        i--;
                }
                ptr++;
        }

for (i=0;*ptr!='\0';i++)
        {
                if (*ptr!=c)
                {
                        s=*ptr;
                }
                else
                {
                        i--;
                }
                ptr++;
        }

请问各位大神这两段代码区别是什么,运行发现结果一样,for (i=0;(*ptr)!='\0';i++)和for (i=0;*ptr!='\0';i++)有什么区别

0mrli0 发表于 2017-2-23 16:33:09

建议看下操作符优先级
一元运算符 * 优先级高于 != 所以加不加括号是一样的{:10_260:}

超凡天赐 发表于 2017-2-24 18:58:49

都是一样的
运算符的优先级和结合性
http://bbs.fishc.com/thread-67664-1-1.html
(出处: 鱼C论坛)
页: [1]
查看完整版本: 请问这两段代码有什么区别,运行结果一样