Keil C51对C语言的关键词扩展之二: alien

alien关键词主要是为了C51编译器与PL/M-51编译器兼容。

在C51编译器中调用PL/M-51函数,须使用alien声明该函数,如下:

extern alien char plm_func (int, char);

char c_func (void)  {
  int i;
  char c;

  for (i = 0; i < 100; i++) {
    c = plm_func (i, c);          /* call PL/M func */
  }
  return (c);
}
为了创建能被PL/M-51程序调用的C51函数,须使用alien关键词声明,如下:

alien char c_func (char a,  int b)  {
  return (a * b);
}

PL/M-51函数的返回值和参数类型可为bit,char,unsigned char,int,unsigned int。C51中alien声明的函数也可使用其他类型如long,float,以及各种类型指针。

须要注意的是,PL/M-51并不能直接支持32位整型数和浮点数。

在C51程序中调用PL/M-51定义的全局变量,只需像调用C51外部变量一样声明extern即可。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章