コード
int main(){ |
---|
if(Ngas==1){ |
double PC7[50]={1,0.885,0.826,0.794,0.775,---}; double PC7A[50]={1,0.769,0.709,0.671,0.645,--};
}else if(Ngas==2){
double PC70[50]={1,0.885,0.826,0.794,0.775,---};
double PC70A[50]={1,0.820,0.773,0.743,0.722,--}:
double PC7[50]=PC70[50];
double PC7A[50]=PC70A[50]; //ここにもdoubleが無いとerrorになる。
} |
---|
PC8=PC7[0]; //PC7 was not declaredのerror(上でPC7[0]を定義してあるが) |
NS=0; //--NS の初期値 |
PC8=PC7[NS]; //下でのerror,ここでは無し |
PC8A=PC7A[NS]; //PC7A was not declaredのerror(上でNS=0を定義してあるが) |
} |
前回の質問1.PC70[50],PC70A[50]:array must be initialized--は解決しました。else if のところで、他のPrgの都合で、一度PC70[50],PC70A[50]を求めて、
PC7[50]=PC70[50],PC7A[50]=PC70A[50]としていましたが、else if なので、
このような間接的手法の必要はなく、ifのところと同じに
PC7[50]=,PC7A[50]=としたところmust be initializedは消えました。
2.PC7[0], PC7A[NS]:で,PC7, PC7A was not declared in this scopeが残っております。ここは最初の{}の外なので数値を与え無ければいけないかも知れません。
1.PC70[50]及びPC70A[50]:array must be initialized with a brace-enclosed initializer. 1.PC7[0], PC7A[NS]:それぞれ was not declared in this scope *プログラム(一部) int main() { ---- ---- if(Ngas==1){ //--インプットデータでNgas=1,or 2を与えている。 double PC7[50] = {1,0.885,0.826,0.794,0.775,-------}; double PC7A[50] = {1,0.769,0.709,0.671,0.645,------}; }else if(Ngas==2){ double PC70[50] = {1,0.885,0.826,0.794,0.775,------}; double PC70A[50] = {1,0.820,0.773,0.743,0.722,-----}; //--ここまでエラー表示なし。 double PC7[50]=PC70[50]; double PC7A[50]=PC70A[50]; //--ここにもdoubleが無いとerrorになる。 //--上記でPC70[50],PC70A[50]がarray must be initializedのerror //--上の2行、Ngas==1でdoubleしてありますがここにもdoubleが無いとnot declared のerrorになります。 } ----- ----- PC8=PC7[0]; //--ここでPC7 was not declaredのエラー PC8=PC7[NS]; //--下のPC7A[NS]はエラーだが、これはエラーになっていない? PC8A=PC7A[NS]; //--ここでPC7A was not declaredのエラー,NSはこの関数の前にあるsubroutineに実引数&NSで呼び出される。 ---- ---- return (0) } *** 本質問は要点以外のことを述べてしまっています。従って、要点を簡潔に記載して再質問させて頂きたいと思いますので宜しくお願い致します。***
回答3件
あなたの回答
tips
プレビュー