【C 語言入門】用保留值標記陣列長度

#include <stdio.h>

int main()
{
    int v[3]={1,2,3};
    printf("%d",length(v));
    return 0;
}

陣列 v 定義為 3 個空間,可以存取 3 個整數。

#include <stdio.h>
int length(int[]);
int main()
{
    int v[]={1,2,3,-1};
    printf("%d",length(v));
    return 0;
}

int length(int v[]){
    int i=0;
    while(v[i]!=-1){
        i++;
    }
    return i;
}

通過觀察可以知道,我們在 v 陣列的最後面添加了一個 -1。這個 -1 就是所謂的保留值,當執行 function length ,讀取到 -1 的時候,就回傳 i。這時的 i 就是陣列的長度。

保留值除了是 -1,也可以是 0 等的數字。

通過在陣列的最尾端添加一個保留值,就可以輕易計算出陣列的長度了。

Leave a Comment

Your email address will not be published. Required fields are marked *