社区
C语言 帖子详情 字符数组中怎么不能有空格? daryl715 2002-01-17 09:25:22 定义一个字符数组,然后用cin输入
为什么输入"hello c++"
输出的时候只显示hello
当输入为655555555 5555的时候,同样数组中只有空格前面的
难道遇到空格就认为输入结束,而不存入数组码?
...全文
1795 11 打赏 收藏 字符数组中怎么不能有空格? 定义一个字符数组,然后用cin输入 为什么输入"hello c++" 输出的时候只显示hello 当输入为655555555 5555的时候,同样数组中只有空格前面的 难道遇到空格就认为输入结束,而不存入数组码? 复制链接
扫一扫 分享 转发到动态 举报
写回复 配置赞助广告取 消
确 定
用AI写文章 11 条回复 切换为时间正序 请发表友善的回复… 发表回复 打赏红包 需支付: 0.00 元 取 消 确 定 Benwangbin 2002-01-17 打赏举报 回复 1 空格在输入时系统会将其当‘\0’处理,所以会停止读入,可以采用逐个字符读入的方法,并输入字符长度。 hz129 2002-01-17 打赏举报 回复 我学C++也不是很长时间,不过交流一下会学得更好一些吧
fox129@163.net daryl715 2002-01-17 打赏举报 回复 谢谢古雨,有什么联系方式么?交个朋友,我初学c++ hz129 2002-01-17 打赏举报 回复 #include
using namespace std;
int main() {
char *p = new char[100];
cin.getline(p,100);
cout << p;
delete p;
}
daryl715 2002-01-17 打赏举报 回复 请大家举例cin.getline()的用法,我怎么编译通不过 daryl715 2002-01-17 打赏举报 回复 第二种方法用cin.get解决,请问cin.getline和cin.get的区别,是取一行和一个字符的差别吗?
用第一种方法如何解决空格问题 daryl715 2002-01-17 打赏举报 回复 如果我想让空格作为一个元素 AMin2001 2002-01-17 打赏举报 回复 空格在输入是作为分隔符
daryl715 2002-01-17 打赏举报 回复 具体是这样
char string1[20];
cin>>string1;
cout< 输入"hello china",输出结果为hello,为什么不是“hello china" 如果这样 for(int i=0;i<=19;i++) cin>>string1[i] 输入同上,输出为”hellochina"(空格没有了) 怎样解决? daryl715 2002-01-17 打赏举报 回复 cin是这样输入 cin>>A; 那cin.getline()呢? hz129 2002-01-17 打赏举报 回复 用cin.getline()来得到输入就能包含空格了 C语言(字符数组) 数组是有序数据的集合。数组中的所有元素都必须是同类型的。用一个统一的名字和下标来唯一的确定元素在数组中的位置。在程序中把循环和数组结合起来,对数组元素进行操作,可有效地处理大批量的数据,提高工作效率。正确定义数组。注意:元素的下标默认从0开始、防止下标越界。注意数组的定义形式和数组元素的引用形式的本质区别。二维数组元素在内存中按行存储。初始化时,按行赋值。C语言中无字符串变量,字符串是以字符数组形式存放的。系统在每个串尾自动加一个串结束符‘\0’,但‘\0’不是字符串的组成部分。 在C或C++这样的编程语言中,“ “ != s[i] 表示 判断字符数组或字符串的某个字符是否不是空格。 在C或C++这样的编程语言中," "!= s[i] 表示 判断字符数组或字符串的某个字符是否不是空格。如果你是想检查字符是否是空格,应该将 " " 替换为单引号包裹的空格字符 ’ ’" " 是字符串字面量,而 s[i] 是单个字符(例如 char 类型)。" ":是一个字符串字面量,表示一个包含单个空格字符的字符串。s[i]:表示字符串或字符数组 s 中索引为 i 的字符。字符和字符串是两种不同的类型,不能直接比较。=:表示“不等于”的比较操作符。 C语言学习笔记——使用字符数组和实型数组分别存储学生姓名和成绩,并通过对学生成绩的排序,按名次输出 题目来自C语言从入门到精通第三版:使用字符数组和实型数组分别存储学生姓名和成绩,并通过对学生成绩的排序,按照名次输出字符数组中对应的学生姓名 在网上大致找了一下没有看到C语言实现的版本,于是自己写了一个。对这个题目的要求并不是很明确,题目中的使用字符数组和实型数组分别存储学生姓名和成绩到底是直接通过代码预先储存到相应的字符数组中,还是要通过gets()函数或scanf_s()函数获取字符串再储存。因为是作为学习理解过程,所以我直接按照先获取学生姓名,成绩,再储存到相应数组中,然后对成绩排序,最后按分数从. 复试_C语言复习之字符数组 字符数组输入时注意: 用scanf()和printf()输入输出字符数组时,%c逐个输入输出字符数组。 “%c”逐个输入字符,将printf()和scanf()放在循环内进行输入输出,数组元素作输入输出项(输入时要加“&”); “%s”整体一次性输入输出字符(string),数组名作输入输出项(输入时不加“&”)。 例如: //%c方式输入字符串 char name[20]; int i; for(i=0;;i++){ scanf("%c",&name[i]); if(name[ C语言字符串输入 但是一下这种情况,scanf会把空格当做字符输入,因此不能正常显示字符a。此时j未被赋值,为随机值。若想正确赋值需在scanf输入格式中增加空格。该函数以无符号 char 强制转换为 int 的形式返回读取的字符,如果。若是动态数组,则sizeof(str)为指针的大小(4或8)。scanf以空格或换行符结束,因此不能输入带有空格的字符串。从指定的流 stream 读取一行,并把它存储在。输入结束后需要在字符数组最后添加'\0'获取一个字符(一个无符号字符)fgets可以读入空格。二、getchar() C语言 70,038 社区成员 243,245 社区内容 发帖 与我相关 我的任务 C语言 C语言相关问题讨论 复制链接 扫一扫 分享 确定 社区描述 C语言相关问题讨论 社区管理员 加入社区 获取链接或二维码 近7日 近30日 至今 加载中 查看更多榜单 社区公告 暂无公告 试试用AI创作助手写篇文章吧 + 用AI写文章