C语言中void返回类型函数问题

#include <stdio.h>
#include <stdlib.h>

void printStar()
{
printf("********\n");
}

int main(void)
{
printStar();

system("pause");
return 0;
}
这个函数的结果是输出“********”,我知道void表示函数返回值为空,在main函数里调用printStar函数时先跳出main函数(一般跳出后有return返回值,这里跳出了吗),运行完printStar函数后怎么返回到main函数里呢?不是没有返回值吗?这里的值只指数值吗?

返回值只是一个数值,没有返回值,表示这个数值为void,其实也是有返回的。
比如:
void printfStar(){
printf()...
return ;
}
这里return后面就是什么都没有,但是它还是返回的。返回后,继续从调用函数的地方执行下去,也就是说,不过有没有返回值,正常情况最后都会返回到main函数的。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-04-04
printStar函数执行完了会默认跳出继续执行main函数后面的追问

为什么呢?是不是所有的都是这样呢?
那一般的不返回值到底怎么理解呢?

追答

如果main函数需要调用printStar函数得到一个值,那么printStar就要返回这个值赋给main函数里的某个变量,你这个只是直接输出,不需要给main函数返回一个值

本回答被提问者采纳
相似回答