C#入门经典(第6版)勘误之误

本书英文名:Beginning Visual C# 2012 Programming

勘误在原书英文网站上,但是最后一个勘误有误:
Chapter3后面的练习题Exercise4中让用括号标出下式的运算顺序:

resultVar += var 1 * var2 + var3 % var4 / var5;

按照C语言,%, *, /的优先级相同,左结合性,所以知道var3 % var4 / var5从左往右依次计算,所以应标为(var3 % var) / var5,结果原书上说(var3 % var) / var5和var3 % (var / var5)都是正确的,勘误以后虽然只剩下了一种正确,但却说是var3 % (var / var5):

勘误截图

用C#试一下:

using System;

namespace SpaceCowboy
{
    class Helloworld
    {
        public static void Main(string[] args)
        {
            int i,j,k;
            i=2%6/2;
            j=(2%6)/2;
            k=2%(6/2);
            Console.WriteLine("i={0},j={1},k={2}",i,j,k);
            Console.ReadLine();
        }
    }
}

输出:

i=1,j=1,k=2

显然i == j != k,依然是C语言的规则。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容