嵌入式DAY3-C语言输入输出

1、输入 ---> 计算机 --->输出 
                    [ 内存 ]

c的输入输出语句 ,并不是c语言本身的一部分。

输入输出语句是C标准库中提供的函数,它们不是C语言本身的一部分,但它们是C编程中必不可少的工具。常用的输入输出函数有printf、scanf、puts、gets、fprintf、sprintf等。这些函数可以让我们在程序中进行数据的输入输出,并且可以格式化输出数据。

#include <stdio.h> //std io (standard input output)

//单个字符的输入输出 
putchar  //输出 
getchar  //输入 

//格式化的输入输出 
printf 
scanf 

//字符串输入输出 
puts 
gets 

2、getchar() //

int getchar(void); //函数原型
功能: 
   字符输入函数 

参数:
   void --空 不需要实参

返回值:
   返回 读到的字符 

3、putchar(); 

int putchar(int c); //函数原型
功能:
    输出一个字符 
参数:
  @c 表示要输出的字符(对应的ASCII码值)
返回值:
   输出了的 字符 对应的ascii码值

4、//格式化输入输出

printf();
功能: 格式化的输出 

函数原型:
printf("格式控制字符串",输出列表)

printf("a = %d\n",a);

格式控制字符串:
  (1)普通字符a=  //原样输出 
  (2)占位符 %d   //占位符 会被 后面的"输出列表"中的值替换 
                     //占位符 与 输出列表 的对应关系 
                     //一个占位符匹配 输出列表中的一个值 
                    //依次匹配
                    //占位符 如果没有 匹配的参数 
                   //此时 对应随机值 

整型数据:
   %d      --- 转换为 有符号十进制形式 
   %o      --- 转换为 八进制形式
   %x      --- 转换为 十六进制形式
               x可以是大写,大写 表示 输出的十六进制中的字母 统统都是大写
   %u      --- 转换为 无符号十进制形式 

 浮点型:
   %f      --- 以十进制形式的小数输出,默认保留6位小数
   %e      --- 以科学计数法形式的输出小数
   %g      --- 以一种更简洁的方式输出,输出中不会打印无用0 

  字符型:
   %c      --- 转换为 字符形式 输出 
   %s      --- 转换为 字符串形式 输出 //数组的时候 再说 
 

5、%[辅助控制符]d

辅助控制符:
  -m.n 

m  //数字 ---表示指定的输出宽度  
     // 如果 实际数值宽度 < m ,此时 输出效果 默认右对齐 
     // 如果想左对齐 ,则m前面加上 一个 负号 (-)
     // -m 
     //如果 实际数值宽度 >= m ,此时 输出实际的数值宽度  
     //如果右对齐时,此时 m前面可以写0,表示空出来的位置用0填充 

#  // %#o  ---八进制输出时,前面加上0
     // %#x  ---十六进制输出时,前面加上0x  如果x是大写,则0x也是大写 0X 

 .n //浮点数 --表示保留n位小数 
     //字符串 --表示保留前n个字符   

 l   long 
  ll  long long int 
  h   相当于short 两个字节  h表示half 一半
  hh  相当于char  一个字节 

  %Lf //表示打印 long double 

0-play
1-pause 
2-set
3-exit 

6、scanf(); 
功能: 格式化输入 
scanf("格式控制字符串",地址列表)

给变量a中输入一个值 

int a;
scanf("a=%d",&a);

格式控制字符串: //类似printf 
普通字符  //原样输入  --scanf中一般不写不同字符 只写占位符 

占位符    //将输入的数字等转换为指定的格式

输入时 占位符 与 数据类型要做到严格匹配

整型数据:
   %d      --- 转换为 有符号十进制形式 
   %o      --- 转换为 八进制形式
   %x      --- 转换为 十六进制形式
               x可以是大写,大写 表示 输出的十六进制中的字母 统统都是大写
   %u      --- 转换为 无符号十进制形式 

浮点型:
   %f      --- 以十进制形式的小数输出,默认保留6位小数
   %e      --- 以科学计数法形式的输出小数
   %g      --- 以一种更简洁的方式输出,输出中不会打印无用0 

  字符型:
   %c      --- 转换为 字符形式 输出 
   %s      --- 转换为 字符串形式 输出 //数组的时候 再说 

地址列表:
    &a  //& 取地址运算符 

注意:
   1. 空白符  (空格,回车,tab键)
   2. scanf("%d\n"); //注意最后\n 是空白符 --作用表示匹配任意多个空白符 
   3. scanf匹配数据结束的情况
      a.遇到非法字符 匹配结束 
      b.超出了指定宽度 

输入缓冲区 

scanf("%d,%d,%d",&a,&b,&c);
123,456,789\n  ---> |123,456,789\n|  输入缓冲区 
123a456

  • 19
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值