C語言-求字元串長度-strlen()與sizeof()

需要在程式碼頭部加上標準庫<string.h>


程式碼示例

#include <string.h>    char s1[20] = "hello world";  char s2[20] = {'h','e','l','l','0',' ','w','o','r','l','d',''};  char s3[] = "hello world";  char s4[] = {'h','e','l','l','0','',' ','w','o','r','l','d',''};  printf("%dt%dt%dt%dn",strlen(s1),strlen(s2),strlen(s3),strlen(s4));  printf("%dt%dt%dt%dn",sizeof(s1),sizeof(s2),sizeof(s3),sizeof(s4));  /*  輸出:  11      11      5       5  20      20      13      13  */

函數說明

  1. strlen():求得的字元串長度是從字元串第一個元素到第一個』』之間元素的個數(如果字元串中間有』』,則結果不是整個字元串的長度),同時不包括該』』
  2. sizeof():求得的字元串長度是存儲該字元串的變數佔用的空間大小,因而一定會包括』』.若』』後還有空餘的空間,也會包含到結果裡面