首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

新人求指导printf("%d\n"printf("abcdef"))

2013-08-10 
新人求指点printf(%d\n,printf(abcdef))#include stdio.h#include stdlib.hint main(void){int i

新人求指点printf("%d\n",printf("abcdef"));

#include <stdio.h>
#include <stdlib.h>
int main(void)
{
int i;
i = printf("%d\n",printf("abcdef"));
printf("%d\n",i);
}


上面代码最终的输出结果是多少?
怎么解读这段代码呢? C printf
[解决办法]

2 #include <stdio.h>
  3 #include <stdlib.h>
  4 int main(void)
  5 {
  6     int i;
  7     i = printf("%d\n",printf("abcdef\n"));//修改了一点,
        // printf函数也是有返回值的,返回字符串的长度
  8     printf("%d\n",i);
  9 }
                      

[解决办法]
printf返回一个int值,表示被打印的字符数
abcdef6
2  //有\n
[解决办法]

#include <stdio.h>
#include <stdlib.h>

int main(void)
{
    int i;
    i = printf("%d\n",printf("abcdef"));//abcdef6  printf返回打印的字符数
    printf("%d\n",i); //2  别忘了上次打印是有一个\n
system("pause");
}

[解决办法]
首先打印字符串abcdef,返回长度6,再将长度打印出来,最后返回长度2
所以:
abcdef6
2
[解决办法]
Return value
    Upon successful return,these functions return the number of characters printed(not including the tailing '\0' used to end output to strings);

i = printf("\n")     i=1
i = printf("abcdef") i=6


6转化为字符串占一个字节。
i = printf("%d\n",printf("abcdef")) i=2

热点排行