หากใช้แทนค่าที่ไม่ใช่ค่าลบดังนั้นทำไมเราไม่ใช้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;