C putchar() 和 getchar()
C 库函数 int getchar(void) 从 终端输入获取一个字符 ;
返回值:该函数以无符号 char 强制转换为 int 的形式返回读取的字符,如果到达文件末尾或发生读错误,则返回 EOF
C 库函数 int putchar(int char) 参数 范围 0~127 也可以是单个字符形式 如: 'n'
返回值: 输出到终端字符的 ASSIC码 对应的10进制数 , 如: putchar('\n') 返回值为10
例子:使用getchar()函数去除终端输入的 ' ' 空格符,然后把其他字符通过putchar()打印到终端
#include <stdio.h>
#define WAY 2 int main(int argc, const char *argv[])
{
char ch;
/*
1. 首先是getchar() 循环获取终端下输入的字符串,
2. 当输入的字符串有 字符 '\n'时结束运行
3. 如果获得终端输入的字符不为 ' ' 空格,就通过putchar() 输出该字符到终端
*/
#if WAY == 1
while(ch != '\n'){
ch = getchar();
if(ch != ' ') putchar(ch);
}
#endif /*
*/
#if WAY == 2
while(ch != '\n'){
ch = getchar();
while(ch != ' '){
putchar(ch);
ch = getchar();
/*此处break结束内层while,但 ch 为 '\n' , 结束外层循环*/
if(ch == '\n') break;//不加这句问题,不会退出,是死循环while(ch!='\n')
}
}
#endif return 0;
}
C putchar() 和 getchar()的更多相关文章
- c/c++学习系列之putchar、getchar、puts、gets的运用
如果您只想取得使用者输入的字元,則可以使用getchar(),它直接取得使用者輸入的字元并传回,如果只想要输出一個字元,則也可以直接使用putchar(),以下是个简单的例子: #include &l ...
- putchar()和getchar()使用解析
1.putchar() 作用:输出一个字符 格式:putchar(c),c为输出参数 #include <stdio.h> int main() { char a1='A',b1='B'; ...
- fgetc,getc,fputc,putc,putchar,getchar
转自 http://blog.csdn.net/todd911/article/details/8952565 输入输出函数家族 家族名 目的 ...
- putchar与getchar
#include <stdio.h>#include <stdlib.h>void myputs(char*p) //此处的*号是标志,标志这P是一个指针{ if(p==NUL ...
- (十)C语言之putchar、getchar
- Linux C 字符函数 getchar()、putchar() 与 EOF 详解
首先给出<The_C_Programming_Language>这本书中的例子: #include <stdio.h> int main() { int c; c = getc ...
- C语言中最常用的三种输入输出函数scanf()、printf()、getchar()和putchar()
本文给大家介绍C语言中最常用的三种输入输出函数scanf().printf().getchar()和putchar(). 一.scanf()函数格式化输入函数scanf()的功能是从键盘上输入数据,该 ...
- C语言中的getchar和putchar详解
首先给出<The_C_Programming_Language>这本书中的例子: #include <stdio.h> int main(){ int c; c ...
- C语言的puts(),gets(),putchar(),getchar()
其实puts(),gets()属于字符串输入函数. putchar()与getchar()属于字符输入函数. 1.字符函数 #include<stdio.h> int main(){ ch ...
随机推荐
- Devexpress的DateEdit控件中DateTime与EditValue异同
相同: 两者值相同,改变一个值都会引起另一个值做出相应改变. 不同: 1:在界面上对控件的编辑框进行操作时,EditValueChanged事件先响应,DateTimeChanged事件后响应. 2: ...
- Unity3D Button组管理(给按钮的onclick事件“传递参数”)
using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEngine.UI; // ...
- ORA-01555快照过旧报错
一.现象 将数据迁移到新库时,执行较大的存过,会报这个错误. 二.原因 产生该报错的原因: (1)sql执行比较久,需要优化sql (2)回滚段过小 (3)undo保存时间过短 三.具体检查及恢复 1 ...
- IP通信基础课堂笔记----关于数链层
课前回顾 IOS从上到下分别有:应用层,传输层,网络层,数链层,物理层. IP是网络层的地址,MAC是数链层的地址,IP必须通过ARP才能转换成MAC地址. 课堂内容 1.如何在数链层实现发送端数据无 ...
- JS高德地图应用 ---- 鼠标点击加入标记 & POI搜索
代码如下 (填入Key值) : <!DOCTYPE html> <html> <head> <meta charset="utf-8"&g ...
- linux 命令启动Oracle数据库
首先使用oracle用户登录Linux,然后在shell命令行中执行下面的命令: 第一步:打开Oracle监听lsnrctl start 第二步:进入sqlplussqlplus /nologSQL& ...
- wav文件系列_2_Python实现读写
本文介绍了 Python 实现音频读写的方法.Python wave 模块提供便捷的 wav 文件操作.该模块并不支持压缩与解压,但支持单声道/立体声的转换. 参考: [1] wave — Read ...
- [转]vux使用教程
原文:https://blog.csdn.net/revival_liang/article/details/78267992 <1>. 在项目里安装vuxnpm install vux ...
- Mysql数据库账户权限设置
1.修改mysql数据库的root密码: 修改 数据库.表名 SET password=加密(‘密码’) where user=’root’; UPDATE mysql.user SET passwo ...
- CSS学习笔记_day3
一.浮动的清除 1.给祖先元素加高度 <style> * { padding: 0; margin: 0; } .box1 { height: 100px; /**/ } ul { /*去 ...