FLASH里的IF问题

来源:百度知道 编辑:UC知道 时间:2024/06/20 13:54:18
这一句是什么意思呀,我看了很长时间也没有看明白
if(!m)

if (某个条件) {
// 当满足这个条件(也就是 true)的时候做什么
}

感叹号的意思是将条件反过来
也就是不满足

这是条件语句. 表示当m为"假" 时执行下面的语句.

例如:
#define buff_size 102400
char *buff;
buff = (char *) malloc(buff_size * sizeof(char));
if (!buff) {
printf("no enough memory for alloc buff !\n");
exit(1);
}

上面做的是动态分配buff, 如果内存不够, buff 值为"假",
if (!buff) 条件成立 (因为!是"逻辑非"运算,buff 为"假", 非buff 变真) 则打印出错信息,并退出程序.
如果动态分配buff成功,则跳过条件语句的then部分.

如果不是m,或者如果m为假
!意思是对m取反