C语言!!的含义-创新互联
偶发现c代码中出现了 !!(condition) 的写法,逻辑上来说 !! 对原来的含义没有任何变换,那这种写法用意何在?
十余年的志丹网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。营销型网站的优势是能够根据用户设备显示端的尺寸不同,自动调整志丹建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。创新互联从事“志丹网站设计”,“志丹网站推广”以来,每个客户项目都认真落实执行。个人猜想:这种写法主要是将,condition 为
true 的表达式结果置为1。因为condition结果 可为正、负数;
false的表达式结果置为0(没有变化)。
这个中写法常见于 strcmp() 、memcmp() 类函数。 如:
#include#includeint main()
{
char *p1 = "1";
char *p2 = "9";
char *p3 = "5";
printf("p1-p2 :%d, %d\n", strcmp(p1,p2), !!strcmp(p1,p2));
printf("p2-p3 :%d, %d\n", strcmp(p2,p3), !!strcmp(p2,p3));
printf("p3-p3 :%d, %d\n", strcmp(p3,p3), !!strcmp(p3,p3)); // 无变化
return 0;
}
运行结果:
你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧
当前文章:C语言!!的含义-创新互联
链接地址:http://lswzjz.com/article/dsihej.html