C 数组、枚举类型enum

传递数组给函数

告诉编译器函数要接受一个指针

skip
//函数声明,数组的长度无需声明,因为编译器不会对形式参数进行边界检查
void myFunction(int param[])
//或者
void myFunction(int *param)
skip

从函数中返回数组

参考连接:https://www.runoob.com/cprogramming/c-return-arrays-from-function.html
C不允许返回一个完整的数组作为参数,所以如果是传值调用,你可以通过返回一个数组名来返回一个执行数组的指针,那么就定义一个返回指针的函数

int * funcname(){}
//另外由于C不允许在函数外返回一个局部变量的地址,除非使用static定义局部变量,即如果想要返回一个数组,除了定义返回类型为指针外,我们还必须在函数内部使用static定义局部变量

枚举类型

参考类型:https://www.runoob.com/cprogramming/c-enum.html
枚举类型是C中的一种基本数据类型,他可以让程序更简洁,更易读

枚举变量

定义枚举变量,分清楚枚举变量和枚举类型的区别

//先定义枚举类型,后定义枚举变量
enum DAY
{
   MON=1, TUE, WED, THU, FRI, SAT, SUN
};
enum DAY week;
//同时定义
enum DAY
{
   MON=1, TUE, WED, THU, FRI, SAT, SUN
}week;
//直接定义
enum
{
   MON=1, TUE, WED, THU, FRI, SAT, SUN
}week;

C语言中,枚举类型是被当作int或者unsignint来处理的,并且后面的值是其前面值+1(只有从前向后的关系。如果第一个没有定义,那么他的默认值是0,而不是后面的值-1)

遍历

由于枚举类型是被当作int或者unsignint来处理的,所以没有变法被遍历。但是如果枚举类型是连续的,可以遍历

将整数转换为枚举

posted @ 2019-10-22 20:15  凌晨四点的蓝  阅读(1383)  评论(0编辑  收藏  举报