C++怎样定义定义字符串
c++中字符串的定义用:string。
如:
string str;//声明str
str="hi"//初始化为hi
可以引入头文件
#include<string>
string str = "hello"//初始化为hello
可以用数组直接定义
数组定义分静态动态
静态: char c[10]; //将数组长度设置为10
动态: int a = 10;
char *c = new char[a]; //将数组长度自定义为a的大小,a的大小可以通过输入自定义设置。
字符串在存储上类似字符数组
它每一位单个元素都是能提取的,字符串的零位是它的长度,如s[0]=10,这提供给我们很多方便,例如高精度运算时每一位都能转化为数字存入数组。
通常以串的整体作为操作对象,如:在串中查找某个子串、求取一个子串、在串的某个位置上插入一个子串以及删除一个子串等。两个字符串相等的充要条件是:长度相等,并且各个对应位置上的字符都相等。
设p、q是两个串,求q在p中首次出现的位置的运算叫做模式匹配。串的两种最基本的存储方式是顺序存储方式和链接存储方式。
以上内容参考:百度百科-字符串
比如说你要定义一个字符型的:char A[20]="你要写的字符串"。
一个字符串能够在定义字符数组时作为初始化数据被存入到数组中,但不能通过赋值表达式直接赋值。例如:char mark[10];mark=''C program''; /*赋值不合法*/
而正确的:
char word[20] = “Dictionary”
char name[ ] = “Tommy”
char c[10] = {‘s’,’t’,’r’,’i’,’n’,’g’,’\0’};最后一个字符’\0’必须有,为字符串结束标志。
扩展资料:
C++是C语言的继承,它既可以进行C语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象的程序设计,还可以进行以继承和多态为特点的面向对象的程序设计。C++擅长面向对象程序设计的同时,还可以进行基于过程的程序设计,因而C++就适应的问题规模而论,大小由之。
C++不仅拥有计算机高效运行的实用性特征,同时还致力于提高大规模程序的编程质量与程序设计语言的问题描述能力。
参考资料:百度百科-C++
1 string类。
在C++中,字符串大多数时候用来指代string类。这时C++ STL中的一个类,包含了各种常用的字符串操作。定义方法为
string var;
或
string var(init_list);
或
string var = init_value;
由于string为类,定义时实际上是定义了一个对象,而初始化方式也就决定了调用何种构造函数来进行构造。string的构造方法有很多,不一一列举,仅以最常用的方式举例:
string a;//定义一个空字符串。
string b="test string";//定义一个字符串并初始化为test string。
2 字符数组。
C++继承了C语言的概念,而在C语言中字符串指的是字符数组,并约定以\0作为结束符。
定义方式如下:
char a[20] = "test string"; //定义一个字符串并初始化为test string。
char *b = "test string"; //与a类似,但这个是直接使用常量字符串的地址,所以字符串b是只读的。
#include<string>
string str = "hello"//初始化为hello
2.可以用数组直接定义
数组定义分静态动态
静态: char c[10]; //将数组长度设置为10
动态: int a = 10;
char *c = new char[a]; //将数组长度自定义为a的大小,a的大小可以通过输入自定义设置。
例如
char s[20];
注意:字符串以“0”结束,需要在可显示的字符长度之外至少加1个字节