博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
自定义一个可以接收空格的字符串的函数
阅读量:2085 次
发布时间:2019-04-29

本文共 567 字,大约阅读时间需要 1 分钟。

在linux系统下使用C语言开发时,在特定场景之下需要用到字符串输入语句,并且有时会输入空格。使用通常使用的字符串输入函数则会出现一些问题。

(1)使用scanf不能接收空格
(2)使用gets又会出现警告 ,又内存溢出的风险,
(3)使用fgets时,亲测,虽然可以接收带有空格的字符串命令,但是其内容却带有换行符,无法正确识别原来的字符串命令

void mygets(char get_str[128])//形参传入一个字符型的数组,或者一个字符串变量{
int i; char c;//作为值的中间传递 for(i=0;i<128;i++)//使用循环将每个输入的字符存入字符数组的每一个地址中 {
c=getchar();//先将输入的每个字符存入C get_str[i]=c;//再将存入C的字符赋值给字符数组 if(c=='\n') {
get_str[i]='\0';//当按下回车时,将回车符改为空格符并且结束输入 break; } }}

PS:

(1)我们知道的是如果形参传入的是一个地址,会改变原地址所存放的数据
(2)根据字符串输入的长度,自拟数组长度哦!

转载地址:http://havqf.baihongyu.com/

你可能感兴趣的文章
【Linux】进程的理解(二)
查看>>
【Linux】vim的简单配置
查看>>
ThreadLocal 那点事儿(续集)
查看>>
笔记本怎么设置WIfi热点
查看>>
如何实现字符串的反转及替换?
查看>>
Java面试题全集(上)
查看>>
Java面试题全集(中)
查看>>
值传递和引用传递
查看>>
什么情况下用+运算符进行字符串连接比调用StringBuilder对象的append方法连接字符串性能更好?
查看>>
怎么根据Comparable方法中的compareTo方法的返回值的正负 判断升序 还是 降序?
查看>>
理解事务的4种隔离级别
查看>>
常用正则匹配符号
查看>>
建议42: 让工具类不可实例化
查看>>
Java 异步机制与同步机制的区别
查看>>
hibernate的对象三种状态说明
查看>>
什么是N+1查询?
查看>>
直插,快排,堆排,归并排序的分析
查看>>
二叉树的各种操作(面试必备)
查看>>
oracle
查看>>
泛型与通配符详解
查看>>