C語言對"不定長"字符串數組的遍歷


一般來說,c語言的數組的初始化可以通過三種方式:

{0},在聲明時使用,如 int a[10]={0}
使用memset, memset(array,0,sizeof(array))
用for循環賦值

C語言的數組可以這樣聲明,int a[]= {1,2,3},即不用事先計算長度,但是通過初始化的值的數量來自動判斷其長度。
另外,對於這種聲明方式,便不能用{0}的方法,否則會被自動識別為長度為1的數組,而C語言的數組一旦聲明,長度是不能再變化的。

同時,類似於c語言中的字符串數組,c語言中並沒有直接計算其長度的函數,所以,一般采用如下的方式:

char * a[] = {"hello","world","!",NULL};
for(int i = 0; a[i]!=NULL; ++i){
  ...
}

在初始化的數組最后一位加上NULL,這樣,當遍歷到此位置的時候便可得知已將前面的char*元素遍歷完成。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM