-1
我似乎無法讀取雙指針指向的數據。這是一個任務,我必須使用雙指針。問題解引用一個雙指針結構
獲得以下錯誤:
Error: Access violation reading location.
下面是代碼:
struct Fraction {
int num, denom;<br>
};
struct PolyTerm {
struct Fraction coeff;
int exponent;v
};
struct PolyNode {
struct PolyTerm** dataPtr;
struct PolyNode* next;
};
void printPolyTerm(struct PolyTerm** argTerm) { // this function works fine><br>
printFraction(&(argTerm->coeff)); //also works fine
printf(" X^%d", argTerm->expo);
return;
}
void printPolyNode(const PolyNode* node) { //NOT WORKING<br>
struct PolyTermPS** ppTerm = node->dataPtr;
struct PolyTermPS* pTerm = *ppTerm;
printPolyTerm(pTerm);
return;
}
這個賦值可能意味着'double *'? –
那麼'const PolicyNode *'?我不認爲有這樣的typedef。它是'const'?考慮到你將它的一個成員分配給一個非const的ppTerm?沒有'printFraction()'在任何地方都可以看到。嗯。你會明白我們是否能以面值的方式做出「正常工作」的評論。例如:'printf(「X ^%d」,argTerm-> expo)'? 'argTerm'是一個指針指針。 '(* argTerm) - > expo'可能有更多的齒(和*幾乎*編譯,除非該成員不叫'expo',被稱爲'exponent')。簡而言之。有什麼*編譯*? – WhozCraig