输入输出字符串的几种方式

输入输出字符串的几种方式

char a[]

a可以直接用cin输入一整串的字符,直到遇到空格或换行符

#include<iostream>
using namespace std;
const int n=5;
int main(){
	char a[100];
	cin>>a;
	cout<<a;
	return 0;
}

结果

qwe
qwe

如果字符串的长度超过数组的长度,也能显示,但可能会破坏数据,如下:

12345678
12345678

string a

#include<iostream>
#include<cstring>
using namespace std;
const int n=5;
int main(){
	string a;
	cin>>a;
	cout<<a;
	return 0;
}

输出结果

123qwe
123qwe

其中的字符串的长度不受限制

string a[]

#include<iostream>
#include<cstring>
using namespace std;
const int n=5;
int main(){
	string a[n];
	for(int i=0;i<n;i++){
		cin>>a[i];
	}
	for(int j=0;j<n;j++){
		cout<<a[j]<<" ";
	}
	return 0;
}

输出结果

1233 12354 犬瘟热无asdsadf asdfas
asfddas
1233 12354 犬瘟热无asdsadf asdfas asfddas

其中数组a的每一个元素的长度可以不一样

char *a[]

字符串常量的本质表示其实是一个地址,类型是char*

#include<iostream>
using namespace std;
const int n=5;
int main(){
	const char *a[n]={"1","12","123","1234","12345"};
	for(int i=0;i<n;i++ ){
		cout<<a[i]<<" ";
	} 
	cout<<endl;
	for(int i=0;i<n;i++){
		cout<<*a[i]<<" ";
	}
	cout<<endl;
	for(int i=0;i<n;i++){
		cout<<*(*(a+i)+i)<<" ";
	}
	return 0;
}

运行窗口

1 12 123 1234 12345
1 1 1 1 1
1 2 3 4 5

版权声明:本文为zy732原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。