Welcome

首页 / 软件开发 / C语言 / 学点C语言(32):函数 - 返回值

学点C语言(32):函数 - 返回值2010-04-30 博客园 万一C语言的函数可以返回数组以外(不包括数组指针)的任何类型.

不写明返回类型, 在以前的 C 语言版本中是默认返回 int, 现在 C99、C++ 已不支持.

void 表示没有返回值, 也就无须 return 语句; 如果是其他语句必须有 return 语句.

在 main 函数中(只是 main 函数)若忘掉 return, 有些编译器会自动添加 return 0;

1. 每执行 return 语句函数将会退出:

#include <stdio.h>

int main(void)
{
printf("111 ");
printf("222 ");

return 0; /* 之后的语句将不会执行 */

printf("333 ");
printf("444 ");

getchar();
return 0;
}

2. 如果函数没有返回值, 可以借无参数的 return 跳出:

#include <stdio.h>

void prn(void);

int main(void)
{
prn();
getchar();
return 0;
}

void prn(void) {
printf("111 ");
printf("222 ");

return; /* 无参数的 return */

printf("333 ");
printf("444 ");
}

3. return 后面不是"等号", 但返回值也可以写在括号中:

#include <stdio.h>

long long MySqr(int x);

int main(void)
{
int i = 9;

i = MySqr(i);
printf("%d ", i);

getchar();
return 0;
}

long long MySqr(int x) {
return(x*x); /* 返回值在括号中 */
}