C++复合类型

数组array

1 数组结构

数组声明应该有以下三点:
{
存储在每个元素中的值的类型;
数组名;
数组中的元素个数;
}
即:

 typeName arrayName[arraySize] 

arraySize 必须时整型或者const值,也可以是常量表达式(8*sizeof(int))

2 数组使用

int yam[3]={1,2,3};

在该数组中

yam[0]=1;

3 数组使用规则

数组只能在定义时初始化;
不能将图个数组赋给另一个数组;

int yam[3];
yam[3]={1,2,3}
int hand[3];
hand=yam;

这种写法是错误的。

字符串数组

1字符串数组结构

char stringName[stringSize];
char dog[11]="Mr. Cheeps";

字符串包含后面的空字符,没有空字符不是字符串。
”s"表示字符串s 和\0 两个字符
's'表示ASCII 83的另一种写法。

strlen[stringName];
sizeof[stringName]

第一句求字符串的长度,第二句求的是数组的长度,包括空字符。

2 字符串数组的输入

面向行的输入:getline()

getline()读取整行,通过回车来结尾。

cin.getline(charName, cinSize);

面向行的输入:get()

cin.get(charName,Arsize);

getline()不再读取并丢弃换行符,get()将换行符留着输入队列中

cin.get(charName,Arsize).get();

字符串string类

要使用string 类,头文件必须包含string。

using namespace std;
std::string;

string 类的结构

string str;
string str1="panther"

string类的赋值和拼接、附加

不能将一个数组赋给另一个数组,但是可以将一个string对象赋给另一个string对象。

赋值

string str1;
string str2 {"panther"};
str1=str2;

拼接

string str3;
str3=str1+str2;
str1+=str2;
strpy(str1,str2);

注意此时str3和str1的值相等。

求字符串长度方法

int len1=str1.size();
int len2=strlen(str1);

结构简介

结构声明

struct structName
{
结构体成员
};

结构体在外部声明,可以用在文件的所有函数中。
局部声明只能用在该函数中。

创建结构数组,结构变量及结构指针

structName arrayName[arraySize]
structName typeName i;
sturctName *p;

枚举

enum spectrum{red,orange,yellow, green,blue}

指针

指针是一个变量,其存储的值是地址,而不是值本身。地址运算符&。
*运算符是间接值或解除引用运算符。
假设p是一个指针,*p指的是,在指针p所指向的地址里存储的值。
*p与常规Int等价。

声明和初始化指针

指针声明必须指定指针指向的数据的类型。

typeName * pointerName;
int * ptr;
char* str;

表示这个指针指的地址存储的是什么类型的值.
注意:一定要在对指针应用解除引用运算符*之前,将指针初始化为一个确定的,适当的地址。

指针赋值

应将内存地址赋给指针。可以对变量应用&运算符,来获得被命名的内存的地址,new运算符返回未命名的内存的地址:

double *pn;
double* pa;
char* pc;
double bubble=3.2;
pn=&bubble;
pc=new char;
pa=new double[30]
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 219,270评论 6 508
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,489评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 165,630评论 0 356
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,906评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,928评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,718评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,442评论 3 420
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,345评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,802评论 1 317
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,984评论 3 337
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,117评论 1 351
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,810评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,462评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,011评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,139评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,377评论 3 373
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,060评论 2 355

推荐阅读更多精彩内容

  • 第一章 计算机与C++编程简介 C++程序6个阶段编程 ->预处理->编译->连接->装入->执行1.程序在编译器...
    rogertan30阅读 3,850评论 0 1
  • ^函数重载的匹配: 当函数名被重载后,函数的匹配过程:首先寻找能精确匹配的函数,如果未能精确匹配,则尝试...
    鲁大帅阅读 1,019评论 0 1
  • 星星掘金云究竟是什么 低成本快速获取精准客户 传统企业及互联网从业者获客难啊 1,传统行业获客成本居高不下 2,企...
    张小坤_e3c9阅读 192评论 0 0
  • 街角有家开了十几年的老店,专卖包子,专卖肉包子。近来去了好几次。每次去我都能呼啦啦地吃掉一笼包子,再呼啦啦喝完一大...
    倪小七阅读 582评论 4 6
  • 我们总是觉得有时候时间过的快,有时候时间过得很慢。 比如,放假前的那两节课。 初中的时候,我在外地寄宿学校上学,那...
    布谷娘阅读 459评论 0 0