#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;
}
在上面的代碼中一個int,我想給exponet儲存至polynode存儲在節點
的結構的博覽會,但我嘗試過很多辦法,但失誤不斷出現
不是博覽會是一個int?爲什麼我不能將exponet(int)存儲到它中?
我查了一些方法,我只是把struct PolyTerm dataPtr;
在polyNode
,並在主polyNode->dataPtr.expo = exponet;
的結構,它的工作
我覺得因爲dataPtr是一個指針struct PolyTerm* dataPtr;
但我不知道要修復它
任何人都可以向我解釋爲什麼我不能這樣做,它的解決方案是什麼?
你會得到什麼錯誤? –
多節點不指向任何東西。您正在取消引用NULL指針。即使DataPtr是NULL。 –
我使用的是Visual C++,而且我可以運行代碼,但是在插入exponet之後,窗口消息彈出並表示已停止工作 –