69,375
社区成员
发帖
与我相关
我的任务
分享
printf("%d\n", printf("%d\n", printf("%s\n",str1)));
2.
另用man 3 printf 看看 printf的返回值。
Upon successful return, these functions return the number of characters printed (not including the trailing ’\0’ used to end
output to strings).
总结,这个问题不但告诉我们printf返回值的问题,还告诉我们了printf嵌套时候的中的执行顺序。printf ("%d\n", printf ("%d\n", printf ("%d\n", printf ("%d\n", 8))));
#include<string.h>
#include<stdio.h>
int main()
{
char *str1="WelcomeTo\0XiyouLinux\n";
char str2[]="WelcomeTo\0XiyouLinux\n";
printf("%d\n",printf("%s",str1));
printf("%ld,%ld\n",strlen(str1),strlen(str2));
printf("%lu,%lu\n",sizeof(str1),sizeof(str2));
return 0;
}