expected expression before ‘{’ tokenがでてきます.

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
cv

expected expression before ‘{’ tokenがでてきます.

#1

投稿記事 by cv » 10年前

#include<stdio.h>
#define n 10;

typedef struct list
{
int a;
int b;
struct list *next;
}s;

int main(void)
{
s c[0]={0,0,NULL};

return 0;
}

これをコンパイルすると,expected expression before ‘{’ tokenがs c[0]={0,0,NULL};の行にでてきます.どうしたらいいでしょうか.

cv

Re: expected expression before ‘{’ tokenがでてきます.

#2

投稿記事 by cv » 10年前

間違えました
main内,ただしくはこうです.

int main(void)
{
s c[n];
s c[0]={0,0,NULL};

return 0;
}

rascal
記事: 27
登録日時: 10年前

Re: expected expression before ‘{’ tokenがでてきます.

#3

投稿記事 by rascal » 10年前

おはようございます

コードを投稿する際は

コード:

で区切ってください
またフォーラムルールをお読みください

フォーラムルール

2行目のdefineの行の;はいらないと思います

box
記事: 2002
登録日時: 13年前

Re: expected expression before ‘{’ tokenがでてきます.

#4

投稿記事 by box » 10年前

ちなみに
cv さんが書きました:

コード:

    s c[n];
こういう風に定義した後で
cv さんが書きました:

コード:

    s c[0]={0,0,NULL};
こういう風に初期化することはできません。
めんどうですが、

コード:

    c[0].a = 0;
    c[0].b = 0;
    c[0].next = NULL;
とする必要があります。

コード:

    s c[n] = { 0, 0, NULL };
という風に、定義と初期化を同時に行なうことはできます。
バグのないプログラムはない。
プログラムは思ったとおりには動かない。書いたとおりに動く。

cv

Re: expected expression before ‘{’ tokenがでてきます.

#5

投稿記事 by cv » 10年前

boxさんありがとうございます!!おかげさまでうまくいきました!!

閉鎖

“C言語何でも質問掲示板” へ戻る