หากใช้แทนค่าที่ไม่ใช่ค่าลบดังนั้นทำไมเราไม่ใช้unsigned int
แทนsize_t
เนื่องจากunsigned int
ไม่ใช่ชนิดจำนวนเต็มที่ไม่ได้ลงชื่อเท่านั้น size_t
อาจจะเป็นใด ๆunsigned char
, unsigned short
, unsigned int
, unsigned long
หรือunsigned long long
ขึ้นอยู่กับการดำเนินการ
คำถามที่สองคือการที่size_t
และunsigned int
สามารถใช้แทนกันได้หรือไม่และถ้าไม่ได้แล้วทำไม?
^^
พวกเขาจะไม่สามารถเปลี่ยนแปลงได้ด้วยเหตุผลที่อธิบายข้างต้น
และใครช่วยยกตัวอย่าง size_t และการทำงานสั้น ๆ ให้ฉันได้บ้าง
ฉันไม่ค่อยเข้าใจในสิ่งที่คุณหมายถึง "การทำงานโดยย่อ" มันทำงานเหมือนกับประเภทอื่น ๆ ที่ไม่ได้ลงนาม (โดยเฉพาะเช่นประเภทที่พิมพ์ลงไป) คุณควรใช้size_t
เมื่อคุณอธิบายขนาดของวัตถุ โดยเฉพาะอย่างยิ่งsizeof
ผู้ประกอบการและฟังก์ชั่นมาตรฐานห้องสมุดต่างๆเช่นผลตอบแทนstrlen()
size_t
โบนัส: นี่คือบทความดีๆเกี่ยวกับsize_t
(และptrdiff_t
ประเภทที่เกี่ยวข้องอย่างใกล้ชิด) เป็นเหตุผลที่ดีว่าทำไมคุณควรใช้
typedef /*This part is implementation dependent */ size_t;