0

こんにちは、char を関数に渡そうとするとエラーが発生します。これが私のコードです。

変数

char *temp;

プロトタイプ

int checkIfUniqueCourseNo(char,int);

電話

checkIfUniqueCourseNo(temp,k);

そして私のエラー

warning: improper pointer/integer combination: arg #1

私はCに慣れていないので、簡単にやってください:)

4

3 に答える 3

2

関数はchar;を受け入れます。を渡そうとしていchar*ます。

これを修正するには、ポインターを逆参照してポインターが指す文字を取得し、関数が期待する型の引数を受け取るようにする必要があります。

checkIfUniqueCourseNo(*temp,k);
于 2012-04-27T14:18:50.040 に答える
0

関数が を除く場合char、ポインターを逆参照する必要があります。

checkIfUniqueCourseNo(*temp,k);
//                    ^ pass the char addressed by temp
于 2012-04-27T14:18:58.030 に答える
0

あなたの変数はchar*(charポインタ)ですが、関数はchar(ポインタではありません)を取ります。

tempの内容を関数に渡したい場合は、 を使用しますcheckIfUniqueCourseNo(*temp, k)。本当にポインター自体を渡したい場合は、関数を次のように宣言します。

int checkIfUniqueCourseNo(char*,int);
于 2012-04-27T14:20:28.557 に答える