函数

//
//  main.c
//  函数
//
//  Created by zhangxueming on 15/6/2.
//  Copyright (c) 2015年 zhangxueming. All rights reserved.
//

#include <stdio.h>
extern int score;//声明全局变量可以提升变量的作用域

//函数:实现特定功能的代码块
//函数定义: 返回值类型 + 函数名 + 函数接口
//   *
//  ***
// *****
//*******

//无返回值, 无形式参数
void print(void)
{
    printf("   *
");
    printf("  ***
");
    printf(" *****
");
    printf("*******
");
    return;
}

//函数调用按值传递的
//函数的返回值就是函数的运行结果
int add(int a, int b)//a, b形式参数 a= 4;b=5;
{
    printf("score = %d
", score);
    return a+b;
}

//int main(int argc, const char * argv[]) {
//    // insert code here...
//    //printf("Hello, World!
");
//    print();
//    print();
//    print();
//    printf("%p
", print);
//    printf("sum = %d
", add(3,8));//4, 5属于实际参数
//    
//    return 0;
//}

//局部变量:定义在{}内的变量, 称为局部变量
//作用域: 从定义的位置开始到所在的大括号结束
//生命周期:从定义的位置开始到所在的大括号结束
//形式参数类似与局部变量

//全局变量:定义在函数体外的变量, 称为全局变量
//全局变量在程序编译的时候占用的内存空间就被确定了
//被定在内存的.data(数据段)
//生命周期是整个源程序
//作用域:从定义的位置开始到所在的文件结束

int score = 90;


void print_num(void)
{
    int num =100;
    printf("num = %d
", num);
    printf("score = %d
", score);
}

int main(int argc,const char *argv[])
{
    //int a=10, b=20;
    
    print_num();
    
    printf("score = %d
", score);
    return 0;
}
原文地址:https://www.cnblogs.com/0515offer/p/4545958.html