こんにちは、char を関数に渡そうとするとエラーが発生します。これが私のコードです。
変数
char *temp;
プロトタイプ
int checkIfUniqueCourseNo(char,int);
電話
checkIfUniqueCourseNo(temp,k);
そして私のエラー
warning: improper pointer/integer combination: arg #1
私はCに慣れていないので、簡単にやってください:)
関数はchar
;を受け入れます。を渡そうとしていchar*
ます。
これを修正するには、ポインターを逆参照してポインターが指す文字を取得し、関数が期待する型の引数を受け取るようにする必要があります。
checkIfUniqueCourseNo(*temp,k);
関数が を除く場合char
、ポインターを逆参照する必要があります。
checkIfUniqueCourseNo(*temp,k);
// ^ pass the char addressed by temp
あなたの変数はchar*
(charポインタ)ですが、関数はchar
(ポインタではありません)を取ります。
tempの内容を関数に渡したい場合は、 を使用しますcheckIfUniqueCourseNo(*temp, k)
。本当にポインター自体を渡したい場合は、関数を次のように宣言します。
int checkIfUniqueCourseNo(char*,int);