1

CGImageRefデータの変更に関するいくつかのドキュメントを調べてみると、奇妙な例に出くわしました。これは、この擬似コードに沿ったものでした。

void *data = Allocate space for data;
if (data != NULL) Manipulate data;
if (data) Free data;

これは私が不思議に思った!if (data != NULL)ブール演算とブール演算の違いは何ですかif (data)

具体的には、ポインターがブール値として扱われる場合、Objective Cでポインターはどのように動作しますか?これをグーグルで検索しようとすると、ポインタがブール値として評価されるのではなく、-ブール値へのポインタ関連する無数の質問しか見つかりませんでした。

4

1 に答える 1

5

それらはまったく同じです。任意の型のゼロ以外の値は、C では "true" として解釈され、Objective-C では拡張によって解釈されます。Cにはブール型さえありません。

于 2012-04-04T06:17:05.073 に答える