[問題] 新手問題 size_t

看板C_and_CPP (C/C++)作者 (steve)時間15年前 (2010/11/20 10:34), 編輯推噓2(205)
留言7則, 2人參與, 最新討論串1/1
請問size_t的功用和一般subscript有什麼不同 書上說要取下標的時候正確的型別是size_t 可是平常我在使用陣列的時候我都是直接在[]裡面打下標值 以書上的一個例子 const size_t array_size=7; int ia[array_size]; for(size_t ix=0;ix!=array_size;++ix) ia[ix]=ix; return 0; 要是我自己打我會打成 const NUMELS=7; int ia[NUMELS]; for(int i=0;i<NUMELS;i++) ia[i]=i; return 0; 我不懂兩個的差別在哪裡 size_t這個型別是做什麼用的呢? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.43.6.180

11/20 10:47, , 1F
size_t一定為正值,你的NUMELS型態指的應該是int吧
11/20 10:47, 1F

11/20 11:27, , 2F
sorry 我忘記打int是那樣沒錯
11/20 11:27, 2F

11/20 11:27, , 3F
那我還是有點不懂size_t的功用特別在哪裡
11/20 11:27, 3F

11/20 11:33, , 4F
int 允許NUMELS=-7,但size_t一定要是正值啊
11/20 11:33, 4F

11/20 11:34, , 5F
如果你確定自己這部份宣告不會出錯的話,是沒差啦
11/20 11:34, 5F

11/20 11:52, , 6F
原來如此我懂了
11/20 11:52, 6F

11/20 11:52, , 7F
感恩
11/20 11:52, 7F
文章代碼(AID): #1CvpEhIR (C_and_CPP)
文章代碼(AID): #1CvpEhIR (C_and_CPP)