首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

c语言变量的相干知识

2012-10-05 
c语言变量的相关知识全局变量:使用全局变量在函数之间共享数据自动变量:超出作用域后,他们在堆栈上分配的

c语言变量的相关知识

全局变量:使用全局变量在函数之间共享数据;

自动变量:超出作用域后,他们在堆栈上分配的内存会自动被释放;

静态变量:使用static修饰的变量,也是在函数内定义;

静态变量与自动变量对比:

1.静态变量虽然定义在函数内,但是函数退出后不会删除,仍会保留下来;

2.自动变量每次进入变量作用域时都会初始化一次,而静态变量只在程序启动第一次进入作用域时初始化一次;

3.静态变量只能在其声明的函数内可见,但它是一个全局变量;

c语言结束程序的方式:

1.main执行到结尾,调用return语句,程序结束;

2.调用abort()方法,程序非正常结束;#include <stdlib.h>

3.调用exit(0)方法,程序正常结束;调用exit(1)方法,程序非正常结束;#include <stdlib.h>

?

#include <stdio.h>#include <stdlib.h>//函数声明int sum(int, int);int product(int, int);int different(int, int);//c语言就是由许多函数组成的,其中main是执行的起点,函数之间互相调用int main() {printf("函数指针使用方法:\n");int a = 10, b = 5;int result = 0;int (*pfun)(int, int); //声明一个函数指针pfun = sum; //指针传递result = pfun(a, b);printf("result: %d\n", result);exit(1);pfun = different;result = pfun(a, b);printf("result: %d\n", result);pfun = product;result = pfun(a, b);printf("result: %d\n", result);printf("\n");//函数指针数组int (*pfuns[3])(int, int); //声明一个函数指针数组   指针是一个变量,函数指针可以像其他变量一样使用pfuns[0] = sum;pfuns[1] = different;pfuns[2] = product;int i = 0;while (i < 3) {result = pfuns[i](a, b);printf("result: %d\n", result);i++;}printf("\n");printf("%d", sum(5, 6));printf("%d", sum(5, 6));printf("%d", sum(7, 8));return 0;}int sum(int x, int y) {static int su = 0;su += x;return x + y;}int product(int x, int y) {return x * y;}int different(int x, int y) {return x - y;}

热点排行