c语言中 printf("%u\n", i*-1);里面的i*-1是什么意思 c语言中 printf("%u\n", i*-1);里面的i...

c\u8bed\u8a00\u4e2d printf("%u\n", i*-1);\u91cc\u9762\u7684i*-1\u662f\u4ec0\u4e48\u610f\u601d

//i * (-1)
//-1 \u662f\u8868\u793a\u8d1f\u6570\u7684\u610f\u601d
//\u4e3e\u4e2a\u7c9f\u5b50\uff1a
#include
int main()
{
char i=-10;
printf("%u\n", i*(-1));
//\u8f93\u51fa\u4e3a\uff1a10
return 0;
}

//i * (-1)//-1 \u662f\u8868\u793a\u8d1f\u6570\u7684\u610f\u601d//\u4e3e\u4e2a\u7c9f\u5b50\uff1a #include int main() {char i=-10;printf("%u\n", i*(-1));//\u8f93\u51fa\u4e3a\uff1a10 return 0;}

i*-1的意思是i与-1的乘积,可以写为i*(-1)或(-1)*i。意思是取i的相反数。如i=3,则运算的结果为-3,i=-3,则运算的结果为3。

printf中%u表示将结果按无符号整数形式输出, '\n'表示回车

规定符说明:
%d 十进制有符号整数
%u 十进制无符号整数
%f 浮点数
%s 字符串
%c 单个字符
%p 指针的值
%e 指数形式的浮点数
%x, %X 无符号以十六进制表示的整数
%o 无符号以八进制表示的整数
%g 把输出的值按照%e或者%f类型中输出长度较小的方式输出
%p 输出地址符
%lu 32位无符号整数
%llu 64位无符号整数

.....意思就是i*(-1)
i * -1 就是 -i

i = 3 二进制 就是 0000000000 0000000000 0000000000 11

-3的二进制就是 1111111111 1111111111 1111111111 01

用无符号数输出就是 4294967293

就是 i 乘以 负一 的意思

扩展阅读:c++教程 ... c语言printf用法例子 ... 免疫组化结果一览表 ... c++实现sin ... xtransfer ... c++ ... c#begininvoke ... 在线c# ... printf d ...

本站交流只代表网友个人观点,与本站立场无关
欢迎反馈与建议,请联系电邮
2024© 车视网