char* fun()
{
return("samsung india");
}
main()
{
printf("%s",printf("electronics")+fun());
}
输出:“Electronicsia”
有人可以解释一下这个输出吗?
最佳答案
printf("Electronics")
将输出发送到 stdout 并返回打印的字符数,即 11,并且由于 fun()
返回一个字符指针,在外部 printf 将指针发送到 stdout 之前,您将向该指针添加 11。
因此内部 printf 输出“电子”,之后外部 printf 输出“ia”。
关于c - 用于从函数返回字符串文字的程序的输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18511572/