请检查以下程序。
#include <stdio.h>
struct st
{
int a ;
}
fn ()
{
struct st obj ;
obj.a = 10 ;
return obj ;
}
int main()
{
struct st obj = fn() ;
printf ("%d", obj.a) ;
}
以下是问题
- 程序的输出是什么?
哪里 ';' 终止“struct st”的声明?
根据 ISO IEC 9899 - 1999 规范,声明应以“;”结尾。
declaration-specifiers init-declarator-listopt ;
如果“struct st”的声明仅代表函数“fn”的返回类型,那么它对其他函数(main)如何可见?