函数
土豆 2023/7/18 c
# 函数的定义和声明
#include <stdio.h>
// 函数的声明
void exchange(int a,int b);
int main() {
int a = 3,b = 4;
exchange(3,4);
return 0;
}
// 函数的定义
void exchange(int a,int b){
int temp;
temp = a;
a = b;
b = temp;
printf("交换后的值 a=%d,b=%d\n",a,b);
}
# 内部函数和外部函数
# 内部函数
如果该函数只能被所在的源文件使用,那么就称这样的函数为内部函数。内部函数又称为静态函数。使用内部函数,可以使函数只局限在函数所在的源文件中,如果在不同的源文件中有同名的内部函数,则这些同名函数间是互不干扰的。
#include <stdio.h>
// 内部函数
static char* GetString(char *pString){
return pString;
}
// 内部函数
static void ShowString(char *pString){
printf("%s\n",pString);
}
int main() {
char * pMyString;
pMyString = GetString("Hello MingRi!");
ShowString(pMyString);
return 0;
}
# 外部函数
定义函数时如果未指明是内部函数还是外部函数,系统将默认此函数为外部函数。也就是说,定义外部函数时可以省略关键字 extern。
/** cal.c 定义外部函数 */
#include<stdio.h>
// 定义外部函数
extern void GetAngle(int a,int b,int c){
float a1 = 0,b1 = 0,c1 = 0;
a1 = (float)180 * a / (a+b+c);
b1 = (float)180 * b / (a+b+c);
c1 = (float)180 * c / (a+b+c);
printf("内角的度数分别是:%.1f,%.1f,%.1f",a1,b1,c1);
}
/** main.c 主函数 */
#include<stdio.h>
// 声明外部函数
extern void GetAngle(int a,int b,int c);
int main() {
GetAngle(2,3,3);
return 0;
}