ในการเขียนโปรแกรม สตริง (String) ถูกนิยามว่าเป็นชุดของอักขระ สำหรับความต้องการในการหาจำนวนอักขระที่ใช้สร้างสตริง ภาษา C มี 2 วิธีคือ strlen() และ sizeof()
ทั้งสองวิธีใช้หาความยาวของตัวถูกดำเนินการ (Operand) แต่จากการทำงานภายในมีความแตกต่างพื้นฐานดังนี้:
| ลำดับ | หัวข้อ | strlen() | sizeof() |
|---|---|---|---|
| 1 | นิยาม | strlen() เป็นฟังก์ชันที่กำหนดไว้ล่วงหน้าในไฟล์ส่วนหัว string.h ในภาษา C |
sizeof() เป็นตัวดำเนินการยูนารี (Unary Operator) ไม่ใช่ฟังก์ชันที่กำหนดไว้ล่วงหน้า |
| 2 | การทำงาน | นับจำนวนอักขระในสตริง ไม่นับค่าค่าว่าง (Null character) คืนค่าความยาวของสตริงที่ลงท้ายด้วย Null | คำนวณขนาดจริงของข้อมูลทุกชนิดที่จัดสรรไว้ในหน่วยไบต์ (รวมค่าค่าว่างด้วย) |
| 3 | การจัดการค่า Null | ไม่นับค่า Null ในการคำนวณความยาวสตริง | ไม่สนใจค่าของตัวแปร คำนวณขนาดจริงที่จัดสรรในหน่วยไบต์ (รวมค่า Null ด้วย) |