↓main関数内で宣言
(*str3)[80];
int b = 0;
int z =10;
for(;b < z; b++, z--){
swap(str3[b],str3[b + z - 1]); エラー→2番目のswapに引数を渡すときに整数からキャストなしにポインタを作成しています。
→1番目のswapに引数を渡すときに整数からキャストなしにポインタを作成しています。
}
-----------------main関数はここまで
下が私が作成したswap関数です。
void swap(char (*x)[80], char (*y)[80]){
char (*temp)[80];
int i = 0;
temp = x;
while(*x[i])
{
(*temp)[i] = (*x)[i];←ここでエラー*temp)は初期化されずに使用されるかもしれません。
(*y)[i] = (*x)[i];
(*x)[i] = (*temp)[i];
i++;
}
}
2次元配列の勉強を兼ねて、
一行の英文内にあるすべての英単語を並べ替えていくプログラムを作っています。
質問は2つです。
①swap関数の引数として、7行目の、(str3,str3[b + z - 1])は適切なのでしょうか。それからこのエラーの意味はどういうことなんでしょうか?
②swap関数内のエラーの理由は何でしょうか?
恐縮ですがよろしくお願いします。