打印
[KungFu32位 MCU]

GD32-c语言-语言与库说明

[复制链接]
2846|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zhamatu|  楼主 | 2020-7-25 23:09 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
2.1 简介
将一些常规方法到库,方便用户程序开发与功能集成。
KF32 工具库位于 C 编译器安装目录的 lib 子目录中,可以通过 KF32 链接器将这些库直接链接到应用程序中。




使用特权

评论回复
沙发
zhamatu|  楼主 | 2020-7-25 23:10 | 只看该作者
2.2 实现定义的限制<LIMITS.H>
头文件 limits.h 中包含了一些宏,这些宏定义了整型数的最小值和最大值。


使用特权

评论回复
板凳
zhamatu|  楼主 | 2020-7-25 23:11 | 只看该作者
2.3 C 标准库
KF32 编译工具链实现部分 C 标准库,包括字符操作、字符串操作、数学库及相应的常量、类型等定义。用户可通过编译工具头文件路径中的相应头文件进行查看。



使用特权

评论回复
地板
zhamatu|  楼主 | 2020-7-25 23:14 | 只看该作者
2.4 浮点库函数及 64 位整数库函数
浮点库包括单精度、双精度浮点操作及 64 位整型变量运算的一系列函数组成。这些函数由 C 语言编译器编译生成调用过程,以辅助实现相应功能,用户无需控制。其中浮点格式采用 IEEE754 标准。嵌汇编或汇编仍可调用使用库,进而实现功能。



使用特权

评论回复
5
zhamatu|  楼主 | 2020-7-25 23:17 | 只看该作者
2.5 可变参数列表<STDARG.H>
头文件 stdarg.h 支持带有可变参数列表的函数。这允许函数带有没有相应声明的参数。参数列表中必须至少包含一个指定的参数。可变参数用省略号...)表示,当宏定义传递时,可以在宏定义带入代码中使用__VA_ARGS__。必须在函数中声明一个 va_list 类型的对象用以保存这些参数。va_start将变量初始化为一个参数列表, va_arg 用来访问这个参数列表, va_end 来终止参数的使用。示例如下:
int foo (int a, ...)
{
va_list va;
int i, res;
va_start (va, a);
for (i = 0; i < 4; ++i)
(void) va_arg (va, int);
res = va_arg (va, int);
va_end (va);
return res;
}



int main ()
{
if (foo (5, 4, 3, 2, 1, 0))
return -1;
return 0;
}



其中,foo 为可变参函数,可变参数在 int a 之后,其功能为返回第 5 个可变参数,如上例返回 0








使用特权

评论回复
6
电子xiaocainiao| | 2020-7-27 22:21 | 只看该作者
支持下,这些都是从基础开始做的,也是费了很大的功夫的,支持下国产自主开发的MCU。

使用特权

评论回复
7
cr315| | 2021-3-18 09:26 | 只看该作者
支持下国产自主开发的MCU

使用特权

评论回复
8
wanduzi| | 2021-3-18 11:57 | 只看该作者
支持下国产自主开发的MCU

使用特权

评论回复
9
yangjiaxu| | 2021-3-27 14:38 | 只看该作者
讲得不错,挺好挺好

使用特权

评论回复
10
B1lanche| | 2021-3-27 14:50 | 只看该作者
感谢分享 挺好的

使用特权

评论回复
11
Betty1299| | 2021-3-27 14:50 | 只看该作者

支持下国产自主开发的MCU

使用特权

评论回复
12
jcky001| | 2021-4-22 14:26 | 只看该作者
很棒,支持国产芯片

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

63

主题

504

帖子

1

粉丝