设有如下语句:
int k=0;
k=printf("OK\n");
则以下叙述中正确的是()。
A
printf必须作为独立语句出现
B
变量k得到的是输出的可见字符个数2
C
变量k得到的是输出字符的总个数3
D
变量k仍保持初值0
C
printf()函数的返回值为实际输出的字符数量。
printf("OK\n")共输出三个字符,就是'O','K','\n',所以选C
printf()是有返回值的,返回输出的字符个数,包括数字,字母,标点符号,空格,换行符等。
A
printf必须作为独立语句出现
显然是错的,你可以把它写进复合语句里,比如三元运算符里,也可以作为if、while的条件
B C D说的都是一回事,k是printf的返回值,那么实际上问的就是printf到底返回什么
printf返回打印的字符数,O,K,\n,一共3个字符,所以返回值是3