找回密码
 立即注册
查看: 859|回复: 16

C语言中常用的函数列表

[复制链接]
  • 打卡等级:偶尔看看III
  • 打卡总天数:51
  • 最近打卡:2024-09-12 20:44:49

2

主题

64

回帖

358

积分

中级会员

积分
358
发表于 2024-5-26 17:06:04 | 显示全部楼层 |阅读模式
C语言中常用的函数列表
输入/输出函数:
  • printf():格式化输出函数。
  • scanf():格式化输入函数。
  • getchar():从标准输入读取一个字符。
  • putchar():向标准输出写入一个字符。
  • puts():输出字符串函数。
  • gets():读取字符串函数(不推荐使用,因为它可能导致缓冲区溢出)。

字符串处理函数:
  • strlen():计算字符串长度。
  • strcpy():复制字符串。
  • strcat():字符串拼接。
  • strncmp():比较两个字符串的前n个字符。
  • strstr():查找子字符串在字符串中的位置。

数学函数:
  • abs():求整数绝对值。
  • fabs():求浮点数绝对值。
  • sqrt():求平方根。
  • pow():求幂运算。
  • sin(), cos(), tan() 等:三角函数。

内存管理函数:
  • malloc():动态内存分配。
  • free():释放动态分配的内存。
  • calloc():分配内存并自动初始化为零。
  • realloc():重新分配内存。

时间函数:
  • time():获取当前时间(以秒为单位)。
  • clock():获取CPU时间(以时钟周期为单位)。
  • strftime() 和 strptime():格式化日期和时间以及解析日期和时间字符串。
    其他相关时间处理函数包括timegm(),localtime(),gmtime(),difftime等。


回复

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:51
  • 最近打卡:2024-09-12 20:44:49

2

主题

64

回帖

358

积分

中级会员

积分
358
发表于 2024-5-26 17:07:59 | 显示全部楼层
本帖最后由 qike009 于 2024-5-26 17:09 编辑

printf() 是 C 语言中的一个非常常用的格式化输出函数,它允许你按照指定的格式输出数据到标准输出设备(通常是屏幕)。下面是一些 printf() 的实例来说明其用法:


实例 1:输出整数

  1. #include <stdio.h>
  2. int main() {
  3.     int num = 123;
  4.     printf("整数值:%d\n", num); // %d 用于输出整数
  5.     return 0;
  6. }
复制代码



实例 3:输出字符串


  1. #include <stdio.h>
  2. int main() {
  3.     char str[] = "Hello, World!";
  4.     printf("字符串:%s\n", str); // %s 用于输出字符串
  5.     return 0;
  6. }
复制代码



实例 4:输出多个数据类型


  1. #include <stdio.h>
  2. int main() {
  3.     int num = 123;
  4.     float fnum = 3.14f;
  5.     char str[] = "混合类型输出";
  6.     printf("整数:%d,浮点数:%f,字符串:%s\n", num, fnum, str); // 同时输出多种类型的数据
  7.     return 0;
  8. }
复制代码


回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:51
  • 最近打卡:2024-09-12 20:44:49

2

主题

64

回帖

358

积分

中级会员

积分
358
发表于 2024-5-26 17:12:56 | 显示全部楼层
scanf()函数通常用于格式化输入。其作用是从标准输入设备(通常是键盘)读取用户输入的数据,并将其按照指定的格式进行解析和存储。
scanf()函数的函数原型如下:

  1. int scanf(const char *format,...);
复制代码


其中,format参数是一个格式化字符串,用于指定输入的数据类型和格式。后面的...是可变参数列表,用于接收输入的数据。
下面是一个使用scanf()函数的示例代码:

  1. #include <stdio.h>
  2. int main() {
  3.     int num;
  4.     float price;
  5.     char name[20];
  6.     printf("请输入产品数量: ");
  7.     scanf("%d", &num);
  8.     printf("请输入产品单价: ");
  9.     scanf("%f", &price);
  10.     printf("请输入产品名称: ");
  11.     scanf("%s", name);
  12.     printf("你购买了 %d 个 %s,单价为 %.2f 元,总计 %.2f 元\n", num, name, price, num * price);
  13.     return 0;
  14. }
复制代码


在上述代码中,我们使用scanf()函数分别读取用户输入的整数、浮点数和字符串,并将它们存储在相应的变量中。最后,我们将这些信息打印出来,输出购买产品的数量、名称、单价和总价。
需要注意的是,scanf()函数存在一些安全隐患,如缓冲区溢出等。因此,在使用scanf()函数时,需要特别注意格式字符串的编写,以确保输入的数据安全可靠。

回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:51
  • 最近打卡:2024-09-12 20:44:49

2

主题

64

回帖

358

积分

中级会员

积分
358
发表于 2024-5-26 17:18:43 | 显示全部楼层

`getchar()`是 C 语言标准库中的一个函数,主要用于从标准输入(通常是键盘)读取一个字符。以下是关于 `getchar()`的一些特点和用法:- 它每次只读取一个字符。- 读取的字符包括空格、制表符、换行符等各种字符。


示例代码:


  1. #include <stdio.h>
  2. int main() {
  3.     char c;
  4.     c = getchar();
  5.     printf("输入的字符是: %c\n", c);
  6.     return 0;
  7. }
复制代码




在这个示例中,程序会等待用户输入一个字符,然后将其输出。


回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:424
  • 最近打卡:2025-05-03 00:02:01
已绑定手机

19

主题

3191

回帖

4876

积分

论坛元老

积分
4876
发表于 2024-5-26 19:32:13 来自手机 | 显示全部楼层
这些c51都支持吗
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:51
  • 最近打卡:2024-09-12 20:44:49

2

主题

64

回帖

358

积分

中级会员

积分
358
发表于 2024-5-27 09:51:28 | 显示全部楼层
so*** 发表于 2024-5-26 19:32
这些c51都支持吗

我也是刚学  新手
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:435
  • 最近打卡:2025-04-30 08:43:23

33

主题

2351

回帖

4860

积分

论坛元老

积分
4860
发表于 2024-5-27 11:30:27 | 显示全部楼层
这写个函数的用法最好去查一下keil的手册,,不然很容易栽坑的
参考例程并不是对技术参 考手册的补充,而是对技术参 考手册的解释。
技术参 考手册不应该需要参考例程作为补充,而是解释成了参考例程的样子
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:51
  • 最近打卡:2024-09-12 20:44:49

2

主题

64

回帖

358

积分

中级会员

积分
358
发表于 2024-5-27 12:00:20 | 显示全部楼层
_奶*** 发表于 2024-5-27 11:30
这写个函数的用法最好去查一下keil的手册,,不然很容易栽坑的

收到  谢谢
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:339
  • 最近打卡:2025-05-02 12:21:25

4

主题

242

回帖

1291

积分

金牌会员

积分
1291
发表于 2024-5-27 16:28:09 | 显示全部楼层
补充一下,keil c51中,输出8位整数要用bd、bu,输出16位是d、u,输出32位整数是ld、lu
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:1
  • 最近打卡:2024-11-08 15:11:01
已绑定手机

1

主题

3

回帖

13

积分

新手上路

积分
13
发表于 2024-11-8 14:58:47 | 显示全部楼层
哪里能下载例程
回复 支持 反对

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-5-3 03:17 , Processed in 0.187621 second(s), 110 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表