1. #define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL
2. 三重条件操作符这个操作符存在C语言中的原因是它使得编译器能产生比if-then-else更优化的代码,了解这个用法是很重要的。
3. #error
4. 怎么样用C编写死循环呢?
while(1){} for(;;){} Loop: ... goto Loop;
5.
6.
7.
int square(volatile int *ptr) { int a,b; a = *ptr; b = *ptr; return a * b; }
8.
#define BIT3 (0x1<<3) static int a; void set_bit3(void) { a |= BIT3; } void clear_bit3(void) { a &= ~BIT3; }
9.
int *ptr; ptr = (int *)0x67a9; *ptr = 0xaa55; *(int * const)(0x67a9) = 0xaa55;
10.
__interrupt double compute_area (double radius) { double area = PI * radius * radius; printf(" Area = %f", area); return area; } 有多少错误?
11.
void foo(void) { unsigned int a = 6; int b = -20; (a+b > 6) ?puts("> 6") : puts("<= 6"); }
12.
if ((ptr = (char *)malloc(0)) == NULL) puts("Got a null pointer"); else puts("Got a valid pointer");
未经允许不得转载:TacuLee » 你的嵌入式软件的功力如何?