行业资讯 2025年06月7日
0 收藏 0 点赞 652 浏览 2687 个字
摘要 :

1.声明数组: short months[12]; 访问其元素:month[0]~month[11] 2.初始化数组:(1)int yam[3]={20, 3, 5}; // 列表初始化可省略等号,也可{}不包含数据,元素均初始化……

1.声明数组: short months[12]; 访问其元素:month[0]~month[11]

2.初始化数组:(1)int yam[3]={20, 3, 5}; // 列表初始化可省略等号,也可{}不包含数据,元素均初始化为0

(2)int xam[3]; xam[0]=20; xam[1]=3; xam[2]=5;

xam[3]={20,3,5};//错,不允许 xam=yam; //错,不允许将一个数组赋给另一个数组

long ph[]={25, 92, 3.0}; //错,列表初始化禁止缩窄转化,浮点double 转化为长整型 long 为缩窄转化

3. (1)c=sizeof yam; //结果是整个数组的字节数 c=12;

(2)c=sizeof yam[0]; //结果是元素的字节数 c=4;

(3) sizeof yam/sizeof yam[0] 可以用于计算数组元素个数

4. C++标准模板库(STL)提供了数组替代品——vector ,C++11新增模板类array.

5. 在确定存储字符串所需的最短数组时,别忘了将结尾的空字符计算在内。

6. 'S’是一个字符常量, “S”表示两个字符S和组成的字符串。 “S”实际上表示字符串所在的内存地址。

7. 数组初始化字符串常量: char name1[15]=“C++OwBody”;

sizeof (name1)=15 ; // 整个数组长度

strlen(name1)=9; // 存储在数组中的字符串长度,只计算可见字符,不计算空字符和结束字符;

4. 面向行的输入:一般在输入名字变量时应使用面向下一行输入,读取多个单词

(1) cin.getline(name,20);//name:数组名,20:字符数可以读取一行中不超过字符数的多个单词, Enter生成换行符,并将换行符替换为空字符(1) cin.getline(name,20);//name:数组名,20:字符数可以读取一行中不超过字符数的多个单词, Enter生成换行符,并将换行符替换为空字符

(2)cin.get(name,20) ; cin.get(desetr,20) ; //会读到行尾并保留换行符到输入队列中连续2次调用get(),在第二调用看到的第一个字符时换行符,认为以达到行尾,无法继续读取

正确调用方法:cin.get(name,20).get();

5. 空行或其他问题,用以下命令恢复输入: cin.clear();

6. string 对象声明为简单变量,而不是数组,程序可自动处理string 的大小。利用string,加入头文件 #include

7. (1)char charr1[20]; char charr2[20]=“jagura” ;

charr1=charr2; //此句数组赋值语句不合法

strcpy(charr1,charr2); //将charr2复制到charr1

strcat (charr1,charr2); //将charr2附加到charr1末尾,

int len=strlen(charr1); //确定字符串中字符数 strlen()是函数

(2)string str1; string str2=“pather”; str1=str2; //最后一句合法

string str3; str3=str1+str2; str2+=str1; //合法

int len=str1.size();//确定字符串中字符数 str1是一个string类 的对象,size()是string类的一个方法。

6. char charr[20]; cout<<strlen(charr); //屏幕输出的结果不确定,可能大于20,或小于20,。为初始化的数组未定义。strlen()从数组第一个元素开始计算字符字数,直到遇到空字符。对为初始化的数组,第一个空字符出现的位置是随机的。

string str; cout<<str.size(); //屏幕输出结果为0.初始化的string对象长度自动设置为0;

7. 将下一行输入读取到数组中的代码: cin.getline(charr1,20); //这句表明cin是istream类的对象,getline()是istream类的方法

将下一行输入读取到string对象中的代码:getline(cin.str); //这句表明getline()不是类方法,在istrea类中有处理double,int

//等其他基本类型的类方法,但没有处理string对象的类方法

cin>>str; //合法,应用了istream类的一个成员函数cin>>x

10. 结构声明初始化:#include

struct inflatable{ char name[20], float volume, double price};

struct inflatable{ std::string name, float volume, double price}; //结构可以将string类作为成员,但要指明访问的名称空间

inflatable duck={“Daphe”, 0.12, 9.98};

inflatable Bobu; Bobu=duck; //结构赋值是有效的

struct peak{ int number, char car[20]} Ala, bay; // Ala, bay是结构peak的两个结构变量。

初始化结构数组: inflatable guest [2]={ {“Daphe”, 0.12, 9.98}, {“Bobu”, 0.34, 6.34} };

11. 共用体:可以储存不同数据类型,但具体某一时刻只能储存一种类型。

12. 枚举: enum spectrum { red, orange, yellow, green, blue, violet, indigo, ultraviolet }; //符号常量,对应的整数值为0~7

spectrum band; //band只能从枚举spectrum定义的8个常量里选择值

设置枚举量的值:指定的值必须为整数

enum bits{one=1 ,two=2, four=4, eight=8 };

enum bitstep{ first, second=100, third }; //first默认为0,后面未初始化的枚举量比前面大1,third =101

enum {zero, null=0, one, nuero=1}; //可以创建多个相同值的枚举量

枚举的取值范围: bits myflag; myflag=bits(126); //合法,上限为最大值的2的幂-1,2^8-1=127

————————————————

原文链接:https://blog.csdn.net/lvliang2017232003/java/article/details/85332232

微信扫一扫

支付宝扫一扫

版权: 转载请注明出处:https://www.zuozi.net/4104.html

管理员

相关推荐
2025-06-07

在数字化阅读与实体书籍并存的时代,图书租赁管理系统正成为图书馆、书店及共享书吧提升运营效率的…

955
2025-06-07

在当今快节奏的校园生活中,外卖已成为学生和教职工日常生活中不可或缺的一部分。随着外卖需求的不…

998
2025-06-07

“金融市场瞬息万变,能否用Python实现同花顺自动化交易?” 这个问题,正是当下许多投资者和技术开发…

779
2025-06-07

你是否想过用中文编写一款高效、稳定的多用户聊天软件? 对于中小型团队或个人开发者而言,*易语言*…

1,019
2025-06-07

一、系统架构设计 分层架构: 前端层:用户端(H5/小程序/APP)+ 管理后台(Web) 服务层:抽奖核心…

675
2025-06-07

在数字化时代,二手交易市场正以前所未有的速度蓬勃发展。无论是闲置物品的流通,还是环保意识的提…

470
发表评论
暂无评论

还没有评论呢,快来抢沙发~

助力内容变现

将您的收入提升到一个新的水平

点击联系客服

在线时间:08:00-23:00

客服QQ

122325244

客服电话

400-888-8888

客服邮箱

122325244@qq.com

扫描二维码

关注微信客服号