C言語なら俺に聞け(入門編)Part 127©5ch.io
■ このスレッドは過去ログ倉庫に格納されています
0415デフォルトの名無しさん
2015/04/13(月) 00:15:55.92ID:XrkvqAK6if文の判定部分に関数を入れて、そのまま判定を行っているのですが
unsign char型(以後UBと表記)ですべて統一しているのに、マイナスの判定になります…。
これでどうしてvalに2が代入されるのでしょうか…助けてください。
ちなみに、ifの判定をこのようにキャストして書くと上手くいきます。→ (UB)abc() > 0
スマホからなので読みにくいかもしれません。
void main(void){
UB val =0;
if(abc() > 0){
val=1;
}else{
val=2;
}
}
UB abc(void){
UB temp=0x80;
return temp;
}
■ このスレッドは過去ログ倉庫に格納されています