#include <stdio.h>
#include <stdlib.h>
struct Fraction {
int num;
int denom;
};
struct PolyTerm {
int expo;
struct Fraction coeff;
};
struct PolyNode {
struct PolyTerm* dataPtr;
struct PolyNode* next;
};
typedef struct Fraction* FractionAddr;
typedef struct PolyNode* PolyNodeAdr;
typedef struct PolyNode* PolyList;
int main() {
int exponet;
PolyNodeAdr polyNode = 0;
printf("\n\tPlease Enter expoent: ");
scanf("%d", &exponet);
polyNode->dataPtr->expo = exponet;
//printf("\n%d\n",polyNode->dataPtr->expo);
return;
}
上記のコードでは、エクスポネットをポリノードの構造体のエクスポに格納しようとしています
しかし、私は多くの方法を試しましたが、エラーが表示され続けます
expo は int ではありませんか?指数 (int) を格納できないのはなぜですか?
struct PolyTerm dataPtr;
polyNode の構造体を入れるだけで、いくつかの方法を確認しました
そしてpolyNode->dataPtr.expo = exponet;
主に、それはうまくいくでしょう
dataPtr がポインタだからだと思いますstruct PolyTerm* dataPtr;
しかし、私はそれを修正する考えがありません
なぜそれができないのか、それに対する解決策は何ですか?