在linux系统下编程,解决scanf不能输入空格的问题
2017-08-11 23:01
501 查看
在linux系统下,使用scanf函数不能输入空格,所以编者就自己封装了一个EncapScanf函数,希望可以帮助到读者。
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int EncapScanf(char *_pcBuffer) //封装输入函数,解决scanf不能输入空格问题
{
int iRet = 0;
setbuf(stdin,NULL);
fgets(_pcBuffer, 256, stdin);
iRet = strlen(_pcBuffer);
//printf("strlen= %d\n", strlen(_pcBuffer));
_pcBuffer[iRet - 1] = '\0';
}
int main()
{
char cBuffer[256] = {0};
printf("please input buffer\n");
EncapScanf(cBuffer);
printf("buffer= %s\n", cBuffer);
}
读者可以上机试一下哦
![](http://static.blog.csdn.net/xheditor/xheditor_emot/default/smile.gif)
linux系统下运行结果:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int EncapScanf(char *_pcBuffer) //封装输入函数,解决scanf不能输入空格问题
{
int iRet = 0;
setbuf(stdin,NULL);
fgets(_pcBuffer, 256, stdin);
iRet = strlen(_pcBuffer);
//printf("strlen= %d\n", strlen(_pcBuffer));
_pcBuffer[iRet - 1] = '\0';
}
int main()
{
char cBuffer[256] = {0};
printf("please input buffer\n");
EncapScanf(cBuffer);
printf("buffer= %s\n", cBuffer);
}
读者可以上机试一下哦
![](http://static.blog.csdn.net/xheditor/xheditor_emot/default/smile.gif)
linux系统下运行结果:
相关文章推荐
- mysql出现中文乱码或不能输入中文问题的Windows或Linux系统解决方法
- mysql--出现中文乱码或不能输入中文问题的Windows或Linux系统解决方法
- vmware安装linux系统时,自动安装,自己不能控制的问题的解决
- ubuntu 16.04下搜狗输入法不能输入中文解决(linux下常见软件崩溃问题解决方案)
- 解决linux 不能识别ntfs分区问题(linux系统挂载移动硬盘)
- ubuntu 16.04下搜狗输入法不能输入中文解决(linux下常见软件崩溃问题解决方案)
- 解决Linux系统不能挂载NTFS分区问题
- win7&win8.1 x64位系统下在VS2010下配置MPICH2&测试&解决scanf不能输入
- 解决Vmware Workstation上安装Linux系统不能SSH远程连接的问题
- 解决linux系统不能使用方向键执行命令的问题
- 如何解决Xmanager不能登陆Linux系统问题
- 【Linux】解决ubuntu14.04下升级系统之后搜狗输入法不能用的问题
- 解决putty终端中显示linux系统中C编程使用curses中文乱码的问题
- ubuntu 16.04下搜狗输入法不能输入中文解决(linux下常见软件崩溃问题解决方案)
- 【Linux】解决ubuntu14.04下升级系统之后搜狗输入法不能用的问题
- scanf_s()函数—帮你解决带有空格的字符串的输入问题
- Linux中SQLPLUS上下键不能显示历史命令的问题/输入错误不能回退问题 rlwrap解决
- 解决Vmware Workstation7上安装Linux系统不能SSH远程连接的问题
- 解决Linux中文环境下astro和Calibre不能输入的问题
- 如何解决Xmanager不能登录Linux系统问题