c语言函数大全语法下载,C语言函数大全(语法).doc

C语言函数大全(语法)

函数名: abort功 能: 异常终止一个进程用 法: void abort(void);程序例:#include

#include

int main(void)

{

printf("Calling abort()\n");

abort();

return 0; /* This is never reached */

}

函数名: abs功 能: 求整数的绝对值用 法: int abs(int i);程序例:#include

#include

int main(void)

{

int number = -1234;

printf("number: %d absolute value: %d\n", number, abs(number));

return 0;

}

函数名: absread, abswirte功 能: 绝对磁盘扇区读、写数据用 法: int absread(int drive, int nsects, int sectno, void *buffer); int abswrite(int drive, int nsects, in tsectno, void *buffer);

程序例:/* absread example */

#include

#include

#include

#include

int main(void)

{

int i, strt, ch_out, sector;

char buf[512];

printf("Insert a diskette into drive A and press any key\n");

getch();

sector = 0;

if (absread(0, 1, sector, &buf) != 0)

{

perror("Disk problem");

exit(1);

}

printf("Read OK\n");

strt = 3;

for (i=0; i<80; i++)

{

ch_out = buf[strt+i];

putchar(ch_out);

}

printf("\n");

return(0);

}

函数名: access功 能: 确定文件的访问权限用 法: int access(const char *filename, int amode);程序例:#include

#include

int file_exists(char *filename);

int main(void)

{

printf("Does NOTEXIST.FIL exist: %s\n",

file_exists("NOTEXISTS.FIL") ? "YES" : "NO");

return 0;

}

int file_exists(char *filename)

{

return (access(filename, 0) == 0);

}

函数名: acos功 能: 反余弦函数用 法: double acos(double x);程序例:#include

#include

int main(void)

{

double result;

double x = 0.5;

result = acos(x);

printf("The arc cosine of %lf is %lf\n", x, result);

return 0;

}

函数名: allocmem功 能: 分配DOS存储段用 法: int allocmem(unsigned size, unsigned *seg);程序例:#include

#include

#include

int main(void)

{

unsigned int size, segp;

int stat;

size = 64; /* (64 x 16) = 1024 bytes */

stat = allocmem(size, &segp);

if (stat == -1)

printf("Allocated memory at segment: %x\n", segp);

else

printf("

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
抱歉,我是一名语言模型,无法提供文件下载或者代码实现。不过,我可以提供一些语法分析的基础知识和思路。 语法分析是编译器中的一个重要环节,其主要功能是将词法分析器分析出的单词序列转化为抽象语法树,从而进行语义分析和代码生成。语法分析可以采用自顶向下的递归下降分析方法或自底向上的移进-归约分析方法。 递归下降分析方法是一种直接根据语法规则进行分析的方法,每个非终结符对应一个递归函数函数内部根据当前单词和语法规则进行判断和调用其他递归函数。该方法简单易懂,但容易陷入死循环和无限递归。为了避免这种情况,可以采用LL(1)文法,即每个非终结符产生式的选择都能够根据当前单词进行确定。 移进-归约分析方法是一种通过将单词序列转换为语法规则序列,最终生成抽象语法树的方法。其中最常用的算法是LR(1)算法,它通过维护一个状态栈和一个符号栈,不断进行移进和归约,直到转换成完整的语法树。该方法相对复杂,但是能够处理更广泛的文法。 无论采用哪种方法,语法分析都需要进行错误处理,例如缺少分号、括号不匹配等语法错误。在语法分析过程中,可以记录每个单词的位置信息,以便在出现错误时能够定位错误的位置。 总之,语法分析是编译器中一个非常重要的环节,需要仔细设计和实现。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值