1.定义数组时,数组中元素的个数不能是动态的,不能用变量表示(const变量可以),必须是已知的。

2.引用数组时只能引用数组中某个元素,不能引用整个数组。

3.定义二维数组时,若同时全部初始化,则可省略第一维的长度,

int a[][3]={1,2,3,4,5,6,7,8,9};

4.数组做函数参数:

void haha(int array[],int n);
haha(a,10);

实参的值会改变,因为传入的是地址。

5.字符串数组:

char str[]="hello";
char str[]={'h','e','l','l','o','\0'};

上面两者等价,而不与下面等价

char str[]={'h','e','l','l','o'};

两者长度是不一样的,因为字符数组的最后一个元素可以不是'\0',并不会出错。

6.字符串处理函数,头文件:string或string.h

strcat(char[],const char[]);
strcat(str1,str2);

将str2添加到str1尾部,str2保持不变,str1变长。

strcpy(char[],const char[],int n);
strcpy(str1,str2);
strcpy(str1,str2,2);

将str2复制到str1,或将str2的前2个字符复制到str1。

strcmp(const char[],const char[]);
strcmp(str1,str2);

str1=str2,返回0;

str1>str2,返回1;

str1<str2,返回-1。

不能直接比较两个str,因为它们是地址。

strlen(const char[]);
char str[]="hello";
strlen(str);

返回str的长度,不包‘\0‘,故此处为5.
7.string:

string str=“sdsdsdsds”;

string定义的是普通变量而不是数组,可以随便赋值啥的,也可以用下标,如str[3]来访问并能够修改,可以直接用cin、cout。

string可以直接“=”,相当于strcpy;

string可以直接“+”,相当于strcat;

string可以直接“<",">”,相当于strcmp;

vs2015中,sizeof(string)=28。

C/C++ 数组、字符串、string的更多相关文章

  1. Java基础——数组应用之字符串String类

    字符串String的使用 Java字符串就是Unicode字符序列,例如串“Java”就是4个Unicode字符J,a,v,a组成的. Java中没有内置的字符串类型,而是在标准Java类库中提供了一 ...

  2. 字符串string和内存流MemoryStream及比特数组byte[]互转

    原文:字符串string和内存流MemoryStream及比特数组byte[]互转   字符串string和内存流MemoryStream及比特数组byte[]互转比较 定义string变量为str, ...

  3. c#中字节数组byte[]、图片image、流stream,字符串string、内存流MemoryStream、文件file,之间的转换

    字节数组byte[]与图片image之间的转化 字节数组转换成图片 public static Image byte2img(byte[] buffer) { MemoryStream ms = ne ...

  4. C# int数组转string字符串

    方式一:通过循环数组拼接的方式: int[] types = new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9 }; string result = string.Empty ...

  5. java字符数组char[]和字符串String之间的转换

    java字符数组char[]和字符串String之间的转换 觉得有用的话,欢迎一起讨论相互学习~Follow Me 使用String.valueOf()将字符数组转换成字符串 void (){ cha ...

  6. JavaScript (JS)基础:DOM 浅析 (含数组Array、字符串String基本方法解析)

    ①文本对象document: 例如:document.getElementById()    只获取一个对象          document.getElementsByTagName()   获取 ...

  7. C++中字符数组和字符串string

    字符数组 C++中字符数组用char str[]能够用来表示一个字符串. (1)   数组的大小和字符串的长度. 数组的大小一定要大于字符串的长度,由于系统会自己主动补上一个'\0'作为字符串的结束标 ...

  8. C# 字符串string和内存流MemoryStream及比特数组byte[]之间相互转换

    定义string变量为str,内存流变量为ms,比特数组为bt 1.字符串转比特数组 复制代码 代码如下: (1)byte[] bt=System.Text.Encoding.Default.GetB ...

  9. C#中字节数组byte[]和字符串string类型的相互转换

    C#中字节数组byte[]和字符串string类型的相互转换: string转byte[]: byte[] byteArray = System.Text.Encoding.Default.GetBy ...

  10. ***php解析JSON二维数组字符串(json_decode函数第二个参数True和False的区别)

    客户端的请求体中的数据:[{"msg_id": 1, "msg_status": "HAS_READ" }, { "msg_id& ...

随机推荐

  1. 谈谈对redux的认识

    redux是从flux演变而来,但又独立于react.简言之就是,redux是一种单纯的状态管理器.可以和react搭配,也可以和其它框架搭配. redux有三个重要的部分组成: store, act ...

  2. 使用PXE安装CentOS7

    1.环境 本文使用VMware 虚拟机进行实验. 点击VMware--编辑--虚拟网络编辑器,新建VMnet15,选择仅主机模式,取消勾选DHCP服务(因为这里使用自己的DHCP服务).我这里配好后是 ...

  3. 编译Android VNC Server【转】

    本文转载自:http://www.cnblogs.com/fengfeng/p/3289292.html 1,在如下地址checkout源代码,我checkout的版本为0.9.7http://cod ...

  4. mysql sakila 执行失败

    1.下载 https://dev.mysql.com/doc/index-other.html 2.解压 3.将解压的文件放入某个位置,必须tmp下面 4.登录mysql 进行source处理 mys ...

  5. fcitx-configtool

    配置输入法

  6. TibetanFont | ཡིག་གཟུགས། | 藏文字体

    1.Microsoft Himalaya 微软喜马拉雅字体 2007年1月30日,微软公司向全球市场同步发布了其最新操作系统Windows Vista,并自带藏文字体和输入法,Windows Vist ...

  7. 并不对劲的uoj276. [清华集训2016]汽水

    想要很对劲的讲解,请点击这里 题目大意 有一棵\(n\)(\(n\leq 50000\))个节点的树,有边权 求一条路径使该路径的边权平均值最接近给出的一个数\(k\) 输出边权平均值下取整的整数部分 ...

  8. Linux设备模型 (2)

    上一篇文章<Linux设备模型 (1)>主要介绍了Linux设备模型在用户空间的接口sysfs,用户通过这个接口可以一览内核设备的全貌.本文将从Linux内核的角度来看一看这个设备模型是如 ...

  9. bzoj4881 线段游戏——上升序列方案数

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=4881 连题意都转化不了了... 题意是要求从一个数列中选出两个上升序列的方案数: 先判断是否 ...

  10. Bootstrap指定表格字段宽度

    默认情况下,表格会占据屏幕所有宽度,可以使用bootstrap的布局功能.但表格标题字段的宽度必须与相应字段内容的宽度一致. <div class="container"&g ...