实际上我(可能)有一个“简单”的问题。所以我不知道如何将有符号整数转换为无符号整数。
我的代码:
signed int entry = 0;
printf("Decimal Number : ");
scanf("%d", &entry);
unsigned int uEntry= (unsigned int) entry;
printf("Unsigned : %d\n", uEntry);
如果我将无符号值发送到控制台(请参阅我的最后一个代码行),我总是会返回一个有符号整数。
你能帮助我吗?
多谢!
亲切的问候,亲
printf("Unsigned : %u\n", uEntry);
// ^^
您必须使用%u
说明符告诉printf
运行时uEntry
is an unsigned int
。如果你使用%d
the printf
函数将期望一个int
,从而将您的输入重新解释回带符号的值。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)