[問題] 初級問題 unsigned int

看板C_and_CPP (C/C++)作者 (蟲蟲你家住哪?)時間16年前 (2009/08/13 12:52), 編輯推噓1(103)
留言4則, 3人參與, 最新討論串1/1
static unsigned int y = 2463534242U; unsigned int xorshift(void) { y ^= (y << 13); y ^= (y >> 17); return y ^= (y << 5); } =========================================== #include "xorshift.h" #include <stdio.h> int main(void) { unsigned int c; int i; for(i=1;i<196;i++){ c = xorshift(); printf("%d,%d\n",i,c); } } =========================================== 請問一下 static unsigned int y = 2463534242U; 那個U是什麼意思? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 123.195.137.179 ※ 編輯: chrisjon 來自: 123.195.137.179 (08/13 12:55)

08/13 12:56, , 1F
unsigned
08/13 12:56, 1F

08/13 12:58, , 2F
那請問一下,如果有加跟沒加u的結果會有什麼差異嗎?
08/13 12:58, 2F

08/13 13:08, , 3F
因為超過31bit 不加u的話 有些compiler會給你warning
08/13 13:08, 3F

08/13 13:29, , 4F
了解!感謝
08/13 13:29, 4F
文章代碼(AID): #1AWvl-7t (C_and_CPP)
文章代碼(AID): #1AWvl-7t (C_and_CPP)