1.枚举练习题
代码:
#include<myhead.h>typedef enum
{LED_1,LED_2,LED_3
}A;typedef enum
{LED_ON,LED_OFF
}B;void inti(A a1)
{switch(a1){case LED_1:printf("初始化LED_1\n");break;case LED_2:printf("初始化LED_2\n");break;case LED_3:printf("初始化LED_3\n");break;}}void con(A a1,A a2)
{switch(a1){case LED_1:{switch(a2){case LED_ON:printf("LED_1 ON\n");break;case LED_OFF:printf("LED_1 OFF\n");break;}break;}case LED_2:{switch(a2){case LED_ON:printf("LED_2 ON\n");break;case LED_OFF:printf("LED_2 OFF\n");break;}break;}case LED_3:{switch(a2){case LED_ON:printf("LED_3 ON\n");break;case LED_OFF:printf("LED_3 OFF\n");break;}break;}}
}int main(int argc, const char *argv[])
{int n,i,j;printf("请输入需要初始化的LED\n");scanf("%d",&n);inti(n);printf("请输入需要控制的LED\n");scanf("%d%d",&i,&j);con(i,j);return 0;
}
结果:
2.结构体大小
3.大小端验证
代码1:
#include<stdio.h>int main(int argc, const char *argv[])
{short a = 0x1234;char c = (char)a;if(c==0x12){printf("大端存储\n");}else{printf("小端存储\n");}return 0;
}
代码2:
#include<stdio.h>int main(int argc, const char *argv[])
{short a = 0x1234;char *p = &a;if(*p==0x12){printf("大端存储\n");}else{ printf("小端存储\n");}return 0;
}
代码3:
#include<stdio.h>union A
{int a1;char a2;
};int main(int argc, const char *argv[])
{union A p;p.a1 = 0x12345678;if(p.a2==0x12){printf("大端存储\n");}else if(p.a2==0x78){ printf("小端存储\n");}return 0;
}
4.思维导图