c++教程:函数
1、声明一个函数非常简单。如果只在一个文件中申明函数。只要把函数放到调用的上方就可以了,这样不用前向声明。例如:
void func(const char* name){ cout << name << endl;}
int main(){
func("hello");
return 1;
}
2、如果期望这个函数在别的文件也可以调用。那么需要把前向声明放到一个.h文件中
3、函数可以指定缺省的参数。在上个例子中我们修改.h文件。函数的声明变成:
void func(const char* name, int flag = 1);
函数的实现部分:
#include <stdio.h>
#include <iostream>
#include <string>
using namespace std;
void func(const char * name, int flag){cout <<name <<","<< flag<< endl;}
调用的时候我们不传入flag参数。flag的值为默认的1
#include <stdio.h>
#include <iostream>
#include <string>
#include "3.h"
using namespace std;
int main(){
func("hello");
return 1;
}
4、如果函数只是期望在本文件中调用。那要加static关键字。
5、有的时候函数的参数的个数是不定的。不定的参数用...表示,va_start不变参数开始,va_end(var_arg);参数结束。 buf= va_arg(var_arg, int);取值
#include <stdio.h>
#include <stdarg.h>
float average(int num,...)
{
va_list var_arg;
int count;
float sum = 0;
float buf = 0;
va_start(var_arg, num);
for(count = 0;count < num; count += 1) {
buf= va_arg(var_arg, int);
sum += buf;
}
va_end(var_arg);
return sum/num;
}
int main()
{
printf("%f\n",average(4,100,200,100,100));
return 0;
}