struct ststst{
int a
int b
char c
}
struct ststst f1()
{
/*写好代码*/
struct ststst ss={3,5,'J'}
return ss
}
你说的这种情况,函数返回的是整个结构体,无论这个结构体中包含了多少个成员,一个结构体就只是一个变量(结构体本身就是一个变量,无论它包含了多少个成员)。这样,函数返回一个结构体就意味着函数把结构体中所有的成员都返回了。C语言函数的确只能有一个返回值,用返回结构体的方式就很好地解决了需要返回多个返回值的问题。return后面没有0或1,说明这个函数是void类型的,这类函数本来就不需要有返回值,这里的return的意思并不是要返回某个值,而是退出这个函数的意思。能只要在定义函数时,返回类型声明你要返回的类型就可以参考代码://#include "stdafx.h"//If the vc++6.0, with this line.#include "stdio.h"#include "string.h"struct ABC{char name[20]int n}struct ABC myfun(void){struct ABC x={"Lining",99}//声明一个结构体局部变量x并初始化return x//返回局部变量结构体x}int main(void){struct ABC y=myfun()//声明一个同类型结构体变量y并将函数返回值赋给它printf("%s %d\n",y.name,y.n)//打出来看看return 0}