これは私のCコードです:リンクリストの種類が認識されないのはなぜですか?
#include <stdio.h>
#include <stdlib.h>
typedef struct node * ptr;
typedef struct node {
int data;
ptr next;
} item;
void printList(ptr p);
int main() {
ptr h = NULL;
}
void printList(ptr p) {
while(p) {
printf("%d -> \n", ptr -> data);
ptr = ptr -> next;
}
}
私はコードをコンパイルするとき、私は2つのエラーを取得:
error: unexpected type name 'ptr': expected expression
printf("%d -> \n", ptr -> data);
^
error: expected identifier or '('
ptr = ptr -> next;
私は変更のすべての種類をいじってみましたが、なぜ、私、私は理解していませんこれらのエラーが発生しています。
zomG、please、1件のスタイルを修正してください。そして、この脳に損傷を与えたtypedefを使わないでください。 – 0andriy
は、 'typedef'sにポインタを隠さないことを強く推奨します – yano
私は' typedef'を私のコースの一部として使用しなければなりません。 – Yos