0

次の問題に出くわしました。誰か助けてもらえますか? ビット単位の操作を使用しようとしていますが、これが 2^50 の値を出力することを期待しています。ただし、出力は0です。印刷できる最大値は2 ^ 31です。これは、通常のintの最大値であるはずですよね?ここで私は何かひどく間違ったことをしていますか?前もって感謝します。

#include<stdio.h>
#include<inttypes.h> 
int main(void)  
{
uint64_t x=(1<<50);
printf("%"PRIu64,x);
return 0;
}
4

1 に答える 1