私は C でプログラミングを始めていますが、得られた結果を理解するのに問題があります。ここにコードを貼り付けます:
#include <stdio.h>
unsigned int main(void)
{
unsigned int x = 0;
printf("%u\n",x-1);
return 0;
}
端末は 4.294.967.295 を返していますが、その理由がわかりません。この値が a の最大値であることはわかっていますが、実際には、結果が負であるため、型ではなく型unsigned int
を使用する必要があるというコンパイラからの警告を期待していました。とにかく、誰かが私を助けることができますか?int
unsigned int