我试图修改像素值(每通道RGBA 8位)通过数值增加/减少一定量的值。我如何在Objective-C或C中执行此操作?以下代码每次都会生成“错误:EXC_BAD_ACCESS”。如何增加/减少未签名的字符?
// Try to Increase RED by 50
for(int i = 0; i < myLength; i += 4) {
//NSLog prints the values FINE as integers
NSLog(@"(%i/%i/%i)", rawData[i], rawData[i+1], rawData[i+2]);
//But for some reason I cannot do this
rawData[i]+=50;
}
甚至
// Try to set RED to 50
for(int i = 0; i < myLength; i += 4) {
//I cannot even do this...
unsigned char newVal = 50;
rawData[i] = 50;
}
旁注: RAWDATA为unsigned char型
这是编译时错误还是运行时错误? – 2009-08-30 06:40:22
为什么这个问题标记为“C++”,如果它要求Objective-C或C? – mmmmmmmm 2009-08-30 08:30:05
难道你不想使用我
0xC0DEFACE
2009-08-31 04:06:30