2017-02-08 7 views
0

構造体の配列を関数にどのように送ることができるか知りたい。それが機能して送信し、関数呼び出しを使用してすべての値を印刷することができますどのようにCの関数として渡された構造体の配列

typedef struct { 
    char fname[20]; 
    char lname[20]; 
    int cnumber[12]; 
} contact; 

contact record[40]; 

int main() 
{ 
    // I have all the data in the record array as I am reading it from the 
    // file and want to pass the record array to the function PRINT and access it. 
    print(); 
} 

答えて

1

あなたはこのような関数に構造体のあなたの配列を送信することができます。

void print(contact record[], int n) { 

次に、この機能の内容を印刷してmain()に戻ってそれを送信します。

print(record, n); 

注:配列の長さ、nは、プログラム内のどこかを追跡してからprint()に渡す必要があります。

+1

また、配列の長さを渡す必要があります。 – army007

+1

アイテムのサイズ(サイズではない)の 'size_t'はなぜですか? –

+0

@JohnColemanあなたが何を意味するか分からない。これを 'size_t'の代わりに' int'にするのが好きですか? – RoadRunner

関連する問題