赋值语句作为if的判断条件

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/u010547283/article/details/52351195

具体如下代码所示:

char name[]="xiaopingguo";

if(char *p=NULL) cout<<"NULL"<<endl;

if(char *p=&name[1]) cout<<"address->"<<name[1]<<endl;

主函数中,进行到第一个if语句时,是不会有输出的;第二个if语句则输出“i”

也就是说:并不是赋值成功了就为真,而是要看赋值的内容是否为真(非NULL,大于0)

另外:

struct temp

{

vector<int> element;

}

struct temp value;

在value中,value.element[0]=0已经被初始化了,即使不在temp结构体中写构造函数,也会进行默认初始化。

展开阅读全文

没有更多推荐了,返回首页