0

C でリンク リストを作成しようとしています。次のコードを使用しています。

#include <stdio.h>

typedef struct _node *nodep;
typedef struct _node {
    int value;
    nodep next;
} node;

int main(){
    printf("Hello World!");
    node* list = 0;
    return 0;
}

コンパイラ エラー C2275 と C2065 が並んでいます

    node* list = 0;

printfの前に問題のある行を削除または移動すると、コードがコンパイルされますprintf

4

2 に答える 2

7

Visual Studio は C99 をサポートしていません。したがって、宣言とステートメントをこの環境に混在させることはできません。むしろ書く:

/* ... */

int main(void) {
    node *list = 0; /* declaration */
    printf("Hello World!\n"); /* statement */
    return 0;
}

これは C89 に準拠しています。

于 2013-07-20T18:29:28.867 に答える
0

以下の変更を行います

node *list =NULL;
printf("\n Hello World ");
于 2013-07-20T18:31:27.400 に答える