新闻  |   论坛  |   博客  |   在线研讨会
Linux C - C基础篇二(基本的输入输出)
嵌入式Linux | 2023-01-11 11:08:27    阅读:394   发布文章

学习Linux c最好用的工具就是man工具了,可以查看c库函数的原型、参数、返回值等详细信息。

1. putchar()函数
  • 函数原型:int putchar(int c)

  • 功能:向终端输出一个字符

  • 参数c:整型(即字符的ascii) / 字符 / 整型表达式

  • 返回值:输出的字符的ascii码值

2. getchar()函数
  • 函数原型:int getchar();

  • 功能:从终端输入一个字符

  • 参数:无

  • 返回值:返回的是输入的字符的ascii码值

3. printf()函数
  • int printf(const char *format, ...);

  • 功能:按指定格式向显示器输出数据

格式字符:%[+/-][m.n]d

m表示打印数据的列宽,如果m小于数据位宽,数据按实际输出,如果m大于数据位宽,在数据左边补空格。n代表小数的位数。+代表打印一个+号。- 代表左对齐,空格补在右边。

打印格式:

4. scanf()函数
  • int scanf(const char * format, ...)

  • 功能:从终端读取任意类型的数据

  • 参数:format 格式控制字符串,%d %s %c....; ...地址符列表

  • 返回值:成功读取数据的个数,出错返回EOF

回收垃圾字符:

scanf("%c%c%c", &a, &b, &c) ,当在终端输入a b c时,得到的是a=a, b= , c = b;作为分隔符的空格或者回车在这里其实是垃圾字符。

方法1: 加空格scanf("%c %c %c", &a, &b, &c) 可以匹配吃掉任意数量的空格,tab,回车键。

方法2: 加%*c scanf("%c%*c%c%*c%c", &a, &b, &c) 可以匹配吃掉一个空格、tab、回车键。

方法3: 在scanf("%c", &a)后面加上getchar函数可以回收垃圾字符。

5. gets()从终端读取一个字符串
  • char *gets(char *s);

  • 功能:从终端读取一个字符串

  • 参数s: 缓存区的首地址.,用来保存读到的字符串的空间

  • 返回值:成功返回缓冲区的首地址;失败,返回NULL

int buf[10] = {};

gets(buf);

注意:一般不建议使用gets,因为不检查目的地址的空间大小,容易发生越界。

6. puts() 向终端输出一个字符串
  • char puts(const char *s);

  • 功能:向终端输出一个字符串. 默认加换行符

  • 参数:要输出的字符串的首地址

  • 返回值:成功返回非负数,出错返回-1

用法:puts("hello world");

以上是老韩关于Linux c基础的总结,如有不足欢迎指点;对Linux c或者Linux驱动感兴趣的朋友可以收藏关注,我会持续更新的,谢谢支持!


*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
专注于嵌入式Linux知识的分享、交流
推荐文章
最近访客