如何在C/Objective-C中获取数组的大小?

Tha*_*nks 0 c arrays objective-c

我有这个数组:

unsigned char* data = CGBitmapContextGetData(cgctx);
Run Code Online (Sandbox Code Playgroud)

然后我试着用sizeof(数据)获得大小,但这将返回一个无意义值为4.数据包含大量信息.那可能不只是4;)

我甚至可以获得数据[8293]的信息......所以...根本不是4个元素.

pgb*_*pgb 7

sizeof返回4因为您的变量被声明为指针,而不是C数组(char data[1024]).

要获得您需要使用的尺寸CGBitmapContextGetHeightCGBitmapContextGetWidth.


Myk*_*yev 6

尝试使用

CGBitmapContextGetBitsPerPixel
CGBitmapContextGetHeight
CGBitmapContextGetWidth
Run Code Online (Sandbox Code Playgroud)

要么

CGBitmapContextGetBytesPerRow
CGBitmapContextGetHeight
Run Code Online (Sandbox Code Playgroud)