中断是嵌入式系统中重要的组成部分,这导致了很多编译开发商提供一种扩
展—让标准 C 支持中断。具代表事实是,产生了一个新的关键字__interrupt。
下面的代码就使用了__interrupt 关键字去定义了一个中断服务子程序(ISR),
请评论一下这段代码的。
__interrupt double compute_area (double radius)
{
double area = PI * radius * radius;
printf(" Area = %f", area);
return area;
}
嵌入式系统经常具有要求程序员去访问某特定的内存位置的特点。在某工程
中,要求设置一绝对地址为 0x67a9的整型变量的值为 0xaa66。编译器是一个纯
粹的ANSI编译器。写代码去完成这一任务。
int *ptr;
ptr = (int *)0x67a9;
*ptr = 0xaa55;
用变量a给出下面的定义
a) 一个整型数(An integer)
b) 一个指向整型数的指针(A pointer to an integer)
c) 一个指向指针的的指针,它指向的指针是指向一个整型数(A pointer to a
pointer to an integer)
d) 一个有10个整型数的数组(An array of 10 integers)
e) 一个有 10 个指针的数组,该指针是指向一个整型数的(An array of 10
pointers to integers)
f) 一个指向有10个整型数数组的指针(A pointer to an array of 10 integers)
g) 一个指向函数的指针,该函数有一个整型参数并返回一个整型数(A pointer
to a function that takes an integer as an argument and returns an integer)
h) 一个有10个指针的数组,该指针指向一个函数,该函数有一个整型参数并返
回一个整型数(An array of ten pointers to functions that take an integer
argument and return an integer )