自定义输入函数 - C语言编程
2024-08-29 05:35:52
有返回功能的输入函数:
#include <stdio.h>
#include <conio.h> void input(char content[]);
int main()
{
char ch[]="\0";// 习惯字符串初赋值为"\0"
printf("Please input: ");
input(ch);// 调用输入函数
if(ch[]!=)
printf("The content : %s",ch);// 输出内容
else
printf("Has come back!\n");// 模拟返回功能
getchar();
return ;
}
void input(char content[])
{
int keyNum=;
char key=;
while(key!=)// 13为回车的ASCII,在Windows上可以是'\r',但不是'\n'
{
key=getch();
if((key>'a'&&key<'z')||(key>'A'&&key<'Z')||(key>=''&&key<='')||(key==' '))
{// 这里可以设置输入范围(不能包含回车)
putchar(key);
content[keyNum++]=key;// 很好地运用了a++和++a各自的特点(a++先赋值再++,++a先++再赋值)
}else if(key=='\b'&&keyNum>)// 退格功能
{
printf("\b \b");
keyNum--;
}else if(key==)// 27为esc的ASCII,实现程序返回功能
{
content[]=;// content[0]用于识别是否为esc键
keyNum++;
break;
}
content[keyNum]=;// 0相当于字符串里'\0',代表字符串的结尾;后置以赋予正确的结尾位置
}
if(keyNum==) input(content);// 实现 无输入情况回车无效
else putchar('\n');// 回车结束输入并换行
}
最新文章
- Unicode简介
- ASP.NET Core 1.0中的管道-中间件模式
- ORACLE 11g 数据库体系结构图
- TreeView 自定义显示checkbox
- 6. ZigZag Conversion
- JSON基本用法
- .Net中几种常见的页面跳转传值方法
- 教你轻松看懂 iOS9 新功能
- LoadRunner参数化功能详解
- 个人总结js客户端验证
- 【Win 10 应用开发】MIDI 音乐合成——乐理篇
- ZipKin的原理的介绍
- 在安卓代码中dp 和 sp 换算px
- BDD中数据的类型及处理方法(python)
- tomcat端口修改以及jvm启动参数设置
- Houdini技术体系 基础管线(四) :Houdini驱动的UE4植被系统 上篇
- Windows 10安装Python 3 7成功打印Hello World!
- Tensorflow学习笔记02-Session,Variable,placeholder
- SQL Server 2008读取域帐户信息
- Python中逗号的妙用