私はC言語を学んでいますが、その漠然としたコンパイラのエラーメッセージはますますイライラしています。ここに私のコードは次のとおりです。returnはキャストのないポインタから整数を返す[-Wint-conversion]戻り値
char getkey (int minimo, int maximo, int alphalen, int index, char alpha[])
{
int cociente, residuo, cont;
int i = 0;
char cand[maximo+1];
char candidate[maximo+1];
while (index != 0)
{
cociente = index/alphalen;
residuo = index%alphalen;
cand[i] = residuo;
index = cociente;
i+=1;
}
for (cont=i-1; cont>=0; cont--)
{
int pos = cand [cont];
candidate[i] = alpha[pos];
}
return candidate;
}
これは、1回の警告を生成します。
- リターンは、キャスト
- リターン候補なしポインタから整数になります。
誰かがこれらの警告を説明できますか?
あなたの関数はcharを返すことを期待していますが、charを返していますか? –
候補は文字ではありません –
あなたの関数は 'char'を返すとして宣言されていますが、あなたは' char * 'を返そうとしています。 –