整型数据+=一条printf语句的含义
查代码看到的一条
p += printf("%d", T->freq);
我自己编了一个,没有报错:
这个出来的是
22
int main(){
int p,q;
p =1; q=2;
p += printf("%d",q);
printf("%d",p);
return 0;
}
这个出来是
2
3
int main(){
int p,q;
p =1; q=2;
p += printf("%d\n",q);
printf("%d",p);
return 0;
}
printf的返回值:如果函数执行成功,则返回所打印的字符总数,如果函数执行失败,则返回一个负数
第一个输出了一个2,所以返回值为1,p+=1后p=2
第二个输出了一个2,一个换行符,所以返回值为2,p+=2后p=3