c++中关于输入字符数组的一些问题

一、scanf对字符串、字符数组的输入有%c和%s两种方式

1.%c用来输入单个字符,它能够识别空格和换行符并将其保存到字符数组中。

2.%s用来输入一个字符串,它通过空格和换行来识别一个字符串的结束,也就是说用它输入到字符数组的字符串是没有空格的。

二、getchar() 用来输入单个字符

1.他可以识别换行符和空格,并将其保存。

三、gets输入、puts输出

1.gets用来输入一行字符串并将其存放到一维数组或者二维数组的一维中,读取字符串直到换行符,但是换行符会被丢弃,并且再在末尾添加‘\0‘。

2.gets()可识别空格并将其输入。

3.puts()函数会自动换行。

原文地址:https://www.cnblogs.com/ZhaoHaoFei/p/12585141.html

时间: 2024-08-30 13:56:22

c++中关于输入字符数组的一些问题的相关文章

C语言中字符串和字符数组的区别

字符数组: char a[2]={'a','b','c'}; char a[]={'a','b','c'}; 字符串: char a[3]={"abc"}; char a[3]="abc";   //此处可以省略大括号 char a[]="abc";     // 与char a[3]={'a','b','c','\0'};    相同 红字表明的地方为什么要变成3呢,因为字符串赋值给数组后,在最后会默认增加一个字符"\0",

textarea中限制输入字符长度(实用版)

textarea称文本域,又称文本区,即有滚动条的多行文本输入控件,在网页的提交表单中经常用到.与单行文本框text控件不同,它不能通过maxlength属性来限制字数,为此必须寻求其他方法来加以限制以达到预设的需求. 通常的做法就是使用#脚本语言来实现对textarea文本域的字数输入限制,简单而实用.假设我们有一个id为 txta1 的textarea文本区,我们可以通过以下代码限制它的键盘输入字数为10个字(汉字或其他小角字符): <script language="#"

C++中的字符数组逐个赋值时报错的解决方法

C++中的字符数组逐个赋值时报错的解决方法 C++中定义一个字符数组的时候,如果初始化,则cout的时候不会出错,但是在逐个字符赋值的时候,很容易出错. #include<iostream> #include<string> using namespace std; int main() { //char s[100] = "china"; char s[100]; s[0]='c'; s[1]='n'; s[2]='\0'; cout<<s<

常用输入字符流Reader

Reader是用于输入字符数据的,它所根据的 方法跟InputStream基本一样.它是所有输入字符流的抽象父类,因此不能直接构建Reader的实例,必须通过它的子类来构建.以下是几个常用的子类: 1.字符数组作为输入源--CharArrayReader CharArrayReader包含一个内部缓冲区,该缓冲区包括从流中读取的字符数组.所谓内存缓存区,就是对应了内存中存在的字符数组,因此可以根据字符数组来创建该类的实例.它有以下两个构造函数: CharArrayReader(char[] bu

字符串指针变量与字符数组的区别

使用字符串指针变量与字符数组的区别 (1)分配内存 设有定义字符型指针变量与字符数组的语句如下: char *pc ,str[100]; 则系统将为字符数组str分配100个字节的内存单元,用于存放100个字符.而系统只为指针变量pc分配4个存储单元,用于存放一个内存单元的地址.(2)初始化赋值含义 字符数组与字符指针变量的初始化赋值形式相同,但其含义不同.例如: char str[ ] ="I am a student ! " ,s[200]; char *pc="You

C语言 &#183; 递归倒置字符数组

算法提高 递归倒置字符数组 时间限制:1.0s   内存限制:512.0MB 问题描述 完成一个递归程序,倒置字符数组.并打印实现过程 递归逻辑为: 当字符长度等于1时,直接返回 否则,调换首尾两个字符,在递归地倒置字符数组的剩下部分 输入格式 字符数组长度及该数组 输出格式 在求解过程中,打印字符数组的变化情况. 最后空一行,在程序结尾处打印倒置后该数组的各个元素. 样例输入 Sample 1 5 abcde Sample 2 1 a 样例输出 Sample 1 ebcda edcba edc

c语言指针字符串与字符数组字符串的区别

#include <stdio.h> int main() { //字符串常量,存放于内存常量区. //常量区区的内存具有缓存机制, //当不同指针指向的常量值相同时, //其实这些指针指向的是同一块常量区内存 //且常量区内存不允许被程序修改 char *str1 = "hello"; char *str2 = "hello"; //报错 // *(str1+2)='A'; printf("str1 = %p\n",str1); p

JS对文本框输入字符的限制

文本框Text或TestBox中对输入字符的限制,通过js事件来监控用户输入字符.然而,如果用户是通过Copy的方式来粘贴到文本中来,那这时候文本框的字符长度有可能超过,这时候就容易报错.这种Copy的方法也可以通过js的时间来监控.这样一来就需要些2个js时间来监控用户输入或Copy的事件了. 其实文本框有一个事件,可以做到这一步,我们设定的文本框的字符长度为500时,如果用户输入或Copy超过500,文本框只会取500的长度. <asp:textbox id="txtTest"

PTA L1-042 日期格式化(将字符数组转换为string类型)

原题 主要通过这题介绍 C++ 中如何将字符数组与字符串的相互转换 参考博客 字符数组转字符串: char a[1000]; string s(&a[i],&a[j]);//i为要转化的其实位置,j为末尾位置加一 字符串转字符数组 #include<bits/stdc++.h> using namespace std; char a[15]; int main() { string s; cin>>s; strncpy(a,s.c_str(),s.length()+