C11隐式转换字符,x%y
发布时间:2020-12-16 10:07:01 所属栏目:百科 来源:网络整理
导读:在C11中, char foo(char x,char y) { return x % y;} 是否在任何地方进行了隐式转换(例如,提升为int)? 解决方法 通常的算术转换适用于%的操作数,它们适用于其他乘法和加法运算符的操作数(参见 6.5.5 Multiplicative operators ). 操作数被提升为int或unsig
在C11中,
char foo(char x,char y) { return x % y; } 是否在任何地方进行了隐式转换(例如,提升为int)? 解决方法
通常的算术转换适用于%的操作数,它们适用于其他乘法和加法运算符的操作数(参见
6.5.5 Multiplicative operators).
操作数被提升为int或unsigned int,具体取决于平台上char类型的范围(参见6.3.1.8 Usual arithmetic conversions和6.3.1.1 Boolean,characters,and integers) 在大多数现实生活平台上,操作数将被提升为int,因为int的范围通常涵盖整个char范围.在一个或多或少的异国平台上,sizeof(char)== sizeof(int)和char是无符号类型(暗示char的范围不适合int的范围),它们将被提升为unsigned int. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |