欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    完整版Keilc51常用库函数汇总参考文档格式.docx

    • 资源ID:6214539       资源大小:25.79KB        全文页数:26页
    • 资源格式: DOCX        下载积分:3金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    完整版Keilc51常用库函数汇总参考文档格式.docx

    1、val的浮点自然对数。(8)log10float log10(float val);logl0函数计算浮点数val的常用对数。常用对数为基数10。val的浮点常用对数。(9)sinfloat sin(float x);sin函数计算浮点数x的正弦值。x必须在-6553565535之间,或产生一个NaN错误。sin函数返回x的正弦。(10)cosfloat cos(float x);COS函数计算浮点数X的余弦。X的值必须在-6553565535之间,或产生一个NaN错误。COS函数返回X的余弦。(11)tanfloat tan(float x);tan函数计算浮点数x的正切值。x必须在-655

    2、3565535之间,或错误值NaN。tan函数返回x的正切。(12)asinfloat asin(float x);求反正弦浮点数x,取值必须在-11之间。X的反正弦,值在-/2/2之间。(13)acosfloat acos(float x);求反余弦x的反余弦,值在0之间。(14)atanfloat atan(float x);求反正切X的反正切,值在-/2/2之间。(15)sinhfloat sinh(float x);sinh函数计算浮点数X的双曲正弦。sinh函数返回x的双曲正弦。(16)coshfloat cosh(float x);cosh函数计算浮点数X的双曲余弦。cosh函数返

    3、回X的双曲余弦。(17)tanhfloat tanh(float x);tanh函数计算浮点数x的双曲正切。tanh函数返回x的双曲正切。(18)atan2float atan2(float y,float x);计算浮点数y/x的反正切。浮点数y,浮点数x。反正切值,值在-之间。x和y的符号确定返回值的象限。(19)ceilfloat ceil(float val)ceil函数计算大于或等于val的最小整数值(收尾取整)。要化为整数的数。ceil函数返回不小于val的最小float整数值。(20)floorfloat floor(float val);取整。floor函数返回不大于val的最

    4、大整数值。(21)fmodfloat fmod(float x,float y);取模。x/y的浮点余数。(22)modffloat modf(float val,float *ip);modf函数把浮点数val分成整数和小数部分。modf函数返回带符号小数部分val。整数部分保存在浮点数ip中。(23)powfloat pow(float x,float y);pow函数计算x的y次幂。pow函数返回值xy。如果x0和y=O,pow返回值1;如果x=0和y0,pow返回NaN。如果xO和y不是一个整数,pow返回NaN。二、空操作,左右位移等内嵌代码(1)_nop_void _nop_(vo

    5、id);_nop_插入一个8051NOP空操作指令到程序,用来停顿1个CPU周期。本程序是固有函数,代码要求内嵌而不是调用。无。(2)_testbit_bit _testbit_(bit b);_testbit_程序在生成的代码中用JBC指令来测试位b,并清零。本程序只能用在直接寻址位变量,对任何类型的表达式无效。固有函数,代码要求内嵌,而非调用。_testbit_程序返回值b(3)_cror_unsigned char _cror_(unsigned char c, unsigned char b);_cror_程序字符c循环右移b位。固有函数,代码要求内嵌,而不是调用。右移的结果(4)_i

    6、ror_unsigned int _iror_(unsigned int i, unsigned char b);_iror_程序将整数i循环右移b位。固有函数,代码要求内嵌而不是被调用。i右移的整数,b右移的次数。_iror_程序返回右移后的值。(5)_lror_unsigned long _lror_(unsigned long l,unsigned char b);_lror_程序将长整数l循环右移b位。固有函数代码,要求内嵌而不是被调用。l要右移的数,b要右移的位数。返回右移后的值。摘要:#include。(6)_crol_unsigned char _crol_(unsigned c

    7、har c, unsigned char b);_crol_程序字符c循环左移b位。左移的结果(7)_irol_unsigned int _irol_(unsigned int i, unsigned char b);_irol_程序将整数i循环左移b位。i左移的整数,b左移的次数。_irol_程序返回左移后的值。(8)_lrol_unsigned long _lrol_(unsigned long l,unsigned char b);_lrol_程序将长整数l循环左移b位。l要左移的数,b要左移的位数。返回左移后的值。(9)_chkfloat_unsigned char _chkfloat

    8、_(float val);检查浮点数的状态。浮点型变量。0,标准浮点数;1,浮点数0;2,正溢出;3,负溢出;4,NaN(不是一个数)错误状态。(10)_push_void _push_(unsigned char _sfr);将特殊功能寄存器_sfr压入堆栈。(11)_pop_void _pop_(unsigned char _sfr);将堆栈中的数据弹出到特殊功能寄存器_sfr。三、字串转数字,随机数,存储池管理(1)atoffloat atof(void *string);将浮点数格式的字符串转换为浮点数。如果string的第一个字符不能转换成数字,就停止处理。格式为,+|-数字.数字e

    9、|E+|-数字。如,-12.345e+67atof函数返回string的浮点值。(2)atoiint atoi(void *string);atoi函数转换string为一个整数值。string是一个字符序列,可以解释为一个整数。atoi函数要求string有这样的格式:空格+|-数字,如”123456”。atoi函数返回string的整数值。(3)atollong atol(void *string);atol函数转换string为一个长整数值。string是一个字符序列,可以解释为一个长整数。atol函数要求string有这样的格式:空格+|-数字,如”1234567890”。atol函数

    10、返回string的长整数值。(4)randint rand(void);rand函数产生一个032767之间的虚拟随机数。rand函数返回一个虚拟随机数。(5)srandvoid srand(int seed);srand函数设置rand函数所用的虚拟随机数发生器的起始值seed,随机数发生器对任何确定值seed产生相同的虚拟随机数序列。(6)strtodunsigned long strtod(const char *string, char *ptr);strtod函数将一个浮点数格式的字符串string转换为一个浮点数。字符串开头的空白字符被忽略。要求string有下面的格式: +|-d

    11、igits.digitse|E+|-digitsdigits可能是一个或多个十进制数。ptr的值设置指针到string中转换部分的第一个字符。如果ptr是NULL,没有值和ptr关联。如果不能转换,则prt就设为string的值,strtod返回0。strtod函数返回由string生成的浮点数。(7)strtollong strtol(const char *string, char *ptr, unsigned char base);strtol函数将一个数字字串string转换为一个long值。输入string是一个字符序列,可以解释为一个整数。字符串开头的空白字符被忽略,符号可选。wh

    12、itespace+|-digitsdigits可能是一个或多个十进制数。如果base是零,数值应该有一个十进制常数、八进制常数或十六进制常数的格式。数值的基数从格式推出。如果base在236之间,数值必须是一个字母或数字的非零序列,表示指定基数的一个整数。字母az(或AZ)分别表示值1036。只有小于base的字母表示的值是允许的。如果base是16,数值可能以0x或0X开头,0x或0x被忽略。prt的值设置指针指向string中转换部分的第一个字符。如果prt是NULL,没有值和ptr关联。如果不能转换,prt设置为string的值,strtol返回0。strtol函数返回string生成的

    13、整数值。如溢出则返回LONG_MIN或LONG_MAX。(8)strtoulunsigned long strtoul(const char *string, char *ptr, unsigned char base);strtoul函数转换string为一个unsigned long值。与strtol函数类似。strtoul函数返回string生成的整数值。如溢出则返回ULONG_MAX。(9)init_mempoolvoid inti_mempool(void xdata *p, unsigned int size);init_mempool 函数初始化存储管理程序,提供存储池的开始地址

    14、和大小。本函数必须在任何其他的存储管理函数(calloc,free,malloc,realloc)被调用前设置存储池,只在程序的开头调用一次。可以修改源程序以适合硬件环境。p参数指向一个xdata的存储区,用calloc,free,malloc和realloc库函数管理。size参数指定存储池所用的字节数。(10)mallocvoid xdata *malloc(unsigned int size);malloc函数从存储池分配size字节的存储块。malloc返回一个指向所分配的存储块的指针,如果没有足够的空间,则返回一个NULL指针。(11)freevoid free(void xdata

    15、 *p);free函数返回一个存储块到存储池。p参数指向用calloc、malloc或realloc函数分配的存储块。一旦块返回到存储就可被再分配。如果p是一个NULL指针,被忽略。本程序的源代码在KEILC51LIB目录中,可以修改源程序,根据硬件来定制本程序。(12)reallocvoid xdata *realloc(void xdata *p,unsigned int size);realloc函数改变已分配的存储块的大小。本程序的源代码在目录KEILC5ILIB中,可以根据硬件环境定制本函数。P参数指向己分配块,size参数指定新块的大小。原块的内容复制到新块,新块中的任何其他区,如

    16、果是一个更大的块不初始化。realloc返回一个指向新块的指针。如果存储池没有足够的存储区,返回一个NULL指针,存储块不受影响。(13)callocvoid xdata *calloc(unsigned int num,unsigned int len);calloc函数从一个数组分配num个元素的存储区。每个元素占用len字节,并清0。字节总数为num*len。在LIB目录提供程序的源代码。可以修改源程序,为硬件定制本函数。num为元素数目,len为每个元素的长度。calloc函数返回一个指针,指向分配的存储区,如果不能分配,则返回一个NULL指针。四、流输入输出(1)_getkeycha

    17、r _getkey(void);_getkey函数等待从串口接收字符。_getkey和putchar函数的源代码可以修改,提供针对硬件的字符级的I/O。接收到的字符(2)getcharchar getchar(void);getchar函数用_getkey函数从输入流读一个字符。所读的字符用putchar函数显示。本函数基于_getkey或putchar函数的操作。这些函数,在标准库中提供,用8051的串口读和写字符。定制函数可以用别的I/O设备。所读的字符。(3)ungetcharchar ungetchar(char c);ungetchar函数把字符c放回到输入流。子程序被getchar

    18、和别的返回c的流输入函数调用。getchar在调用时只能传递一个字符给ungetehar。如果成功,ungetchar函数返回字符c。如果调用者在读输入流时调用ungetchar多次,返回EOF表示一个错误条件。(4)putcharchar putchr(char c);putchar函数用8051的串口输出字符c。本程序指定执行,功能可能有变。因提供了_getkey和putchar函数的源程序,可以根据任何硬件环境修改以提供字符级的I/O。putchar函数返回输出的字符c。(5)printfint printf(const char *fmtstr ,arguments);printf函数

    19、格式化一系列的字符串和数值,生成一个字符串用putchar写到输出流。fmtstr参数是一个格式化字符串,可能是字符、转义系列和格式标识符。普通的字符和转义系列按说明的顺序复制到流。格式标识符通常以百分号(%)开头,要求在函数调用中包含附加的参数Arguments。格式字符串从左向右读。第一个格式标识符使用fmtstr后的第一个参数,用格式标识符转换和输出。第二个格式标识符访问fmtstr后的第二个参数。如果参数比格式标识符多,多出的参数被忽略。如果参数不够,结果是不可预料的。格式标识符用下面的格式:%flagswidth.precisionb|B|l|Ltype格式标识符中的每个域可以是一个

    20、字符或数字type域是一个字符,指定参数是否解释为一个字符、字符串、数字或指针。如下表所示:可选的字符b或B和l和L可直接放在类型字符前,分别指定整数类型d、i、u、o、x和X的char或long版本。flags 域是单个字符,用来对齐、输出和打印+/-号、空白、小数点、八进制和十六进制的前缀。width 域是一个非负数字,指定显示的最小字符数。如果输出值的字符数小于width,空白会加到左边或右边(当指定了一个标记)以达到最小的宽度。如果width用一个0作前缀,则填充的是零而不是空白。width域不会截短一个域。如果输出值的长度超过指定宽度,则输出所有的字符。width域可能是星号(*),

    21、在这种情况下,参数列表的一个int参数提供宽度值。如果参数使用的是unsigned char,在星号标识符前指定一个b。precision域是非负数字,指定显示的字符数、小数位数或有效位。precison域可能使输出值切断或舍入。precision域可能是星号(*),在这种情况,参数列表的一个int参数提供宽度值。本函数指定执行基于putchar函数的操作。本函数作为标准库提供,用805l的串口写字符,用别的I/O设备可以定制函数。必须确保参数类型和指定的格式匹配。可用类型映射确保正确的类型传递到printf。可传递给 printf 的总的字节数受到 8051 的存储区的限制。SMALL 模式

    22、和COMPACT模式最多15字节,LARGE模式最多40字节。printf函数返回实际写到输出流的字符数。(6)sprintfint sprintf(char *buffer,const char *fmtstr ,arguments);sprintf函数格式化一系列的字符串和数值,并保存结果字符串在buffer fintstr。参数是一个格式字符串,和printf函数指定的要求相同。sprintf函数返回实际写到buffer的字符数。(7)vprintfvoid vprintf(const char *fmtstr, char *argptr);vprintf函数格式化一系列字符串和数字值,

    23、并建立一个用puschar函数写到输出流的字符串,函数类似于printf的副本,但使用参数列表的指针,而不是一个参数列表。本函数是指定执行的,基于putchar函数的操作。本函数作为标准库提供,用8051的串口写字符。别的I/O设备可以定制函数。fmtstr参数是一个指向一个格式字符串的指针,和printf函数的fmtstr参数有相同的形式和功能。argptr参数指向一系列参数,根据格式中指定的对应格式转换和输出。vprintf函数返回实际写到输出流的字符数。(8)vsprimfvoid vsprintf(char *buffer, const char *fmtstr, char *argp

    24、tr);vsprintf函数格式化一系列字符串和数字值,并保存字符串在Buffer中。函数类似于sprintf的副本,但使用参数列表的指针,而不是一个参数列表。vsprintf函数返回实际写到输出流的字符数。 (9)getschar *gets(char *string, int len);gets函数调用getchar函数读一行字符到string。这行包括所有的字符和换行符(n)。在string中换行符被一个NULL字符()替代。len参数指定可读的最多字符数。如果长度超过len,gets函数用NULL字符终止string并返回。本函数指定执行基于_getkey或putchar函数的操作。这

    25、些函数,在标准库中提供,用8051的串口读写。对别的I/O设备可以定制。string要读的字符串,len最多字符数。gets函数返回string(10)scanfint scanf(sonst char *fmtstr ,argument);scanf函数用getchar程序读数据。输入的数据保存在由argument根据格式字符串fmtstr指定的位置。每个argument必须是一个指针,指向一个变量,对应fmtstr定义的类型,fmtstr控制解释输入的数据,fmtstr参数由一个或单个空白字符、非空白字符和下面定义的格式标识符组成。 空白字符,空白( ),制表(t)或换行(),使scanf

    26、跳过输入流中的空白字符。格式字符串中的单个的空白字符匹配输入流的0或多个空白字符。 非空白字符,除了百分号(%),使scanf从输入流读但不保存一个匹配字符。如果输入流的下一个字符和指定的非空白字符不匹配,scanf函数终止。 格式标识符以百分号()开头,使scanf从输入流读字符,并转换字符到指定的类型值。转换后的值保存在参数列表的argument中。百分号后面的字符不被认为是一个格式标识符,只作为一个普通字符。例如%匹配输入流的一个百分号。格式字符串从左向右读,不是格式标识符的字符必须和输入流的字符匹配。这些字符从输入流读入,但不保存,如果输入流的一个字符和格式字符串冲突,scanf终止。任何冲突的字符仍保留在输入流中。在格式字符串中的第一个格式标识符引用fmtstr后面的第一个参数,并转化输入字符,用格式标识符保存值。第二个格式标识符访问fmtstr后面的第二个


    注意事项

    本文(完整版Keilc51常用库函数汇总参考文档格式.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开