-3
.txtファイルと領域情報を書き、動的ベクトルで作業したい。.txtファイル(C言語)にデータを書き込む
struct area{
// struct n_area * prox;
char nome[20];
int peso;
int pesoatual;
int jaula;
int nareas;
char **vizinhos;
};
typedef struct area AREA;
typedef AREA *PAREA;
と機能::
PAREA criaArea(){
PAREA area;
area = (PAREA)malloc(sizeof(AREA));
printf("Nome: ");
scanf("%s", area->nome);
printf("Capacidade: ");
scanf("%d", &area->peso);
area->peso = 0;
return area;
}
私は、ファイルに表示する: エリア(名)、容量(kg)及び隣接する領域 は、私はこれらの構造を持つヘッダを持っています。 それは私にこれらのエラーを与えている:
funcoes.c: At top level:
funcoes.c:65:7: error: conflicting types for 'criaArea'
PAREA criaArea(){
^
funcoes.c:38:22: note: previous implicit declaration of 'criaArea' was here
case 49: criaArea(); break;
@Vasco Cardoso:この関数を宣言した同じファイルで呼び出す場合は、関数プロトタイプがあることを確認してください。それ以外の場合、関数はintを返すように暗黙的に宣言され、PAREAを返す定義と競合します。 –
私はあなたに同意します。最善の方法は、関数の宣言またはC構造体のプロトタイプをCヘッドファイル(.h)に入れ、関数の定義をCファイル(.c)に入れることです。次に、これらの機能を使用する前に、ヘッドファイルをCファイルに含めます(関数の呼び出しや関数の定義を含む)。 – WangYang
ありがとう、@ WangYangあなたは正しい、それは機能の順序だったああ –