2012-05-08 22 views
1

structによって作成されるグローバル/パブリック変数を定義したいと思います。メインまたは他の機能の中でuser_list.xまたはy/zにアクセスすることはできません。私が以下のコードをデバッグすると、次のエラーが返されます。「構造体または共用体ではないメンバーxの要求」。どのように私は異なる関数からアクセスできるグローバルな構造体変数を宣言できますか?あなたはstructオブジェクトではありませんstructオブジェクトの配列を使用しているCでグローバルな "struct"変数を定義する方法

#include <stdio.h> 
#include <stdlib.h> 

struct routing { 
     int x; 
     int y; 
     int z; 
}; 
struct routing user_list[40]; 

int main(int argc,char *argv[]) 
{ 

    user_list.x = 1; 
    printf("user_list.x is %d",user_list.x); 
    return 0; 
} 

答えて

8

ありがとうございます。

アクセスにしたいアレイメンバーを指定します。

int i = 0; 

user_list[i].x = 1; 
printf("user_list[i].x is %d",user_list[i].x); 
1

あなたの配列へのインデックスでアクセスする必要があります。

iはあなたのインデックス(以前に定義された、または "定数")

ある
user_list[i].x = 1; 
printf("user_list[i].x is %d",user_list[i].x); 

をお試しください

関連する問題