本文へスキップ
BecomeCoder

C言語のエラー · エラー9

incompatible pointer types ― 違う型のポインタを代入した

指す先の型が異なるポインタどうしを、キャストなしで代入すると出ます。

出るコード

int *p;
double d = 3.14;
p = &d;   // int* に double* を代入

エラーメッセージ

warning: assignment to 'int *' from incompatible pointer type 'double *' [-Wincompatible-pointer-types]

直し方

ポインタの型を一致させます(double *p = &d;)。型を変えて解釈したい場合のみ明示的にキャストします。