C++ 这里有一些字符串问题
我正在做一个蒸汽机器人。我需要得到一个变量中字符串的每个字符,我尝试使用向量,但没有成功。从字符串“abc”我得到向量:979899。我不明白那里出了什么问题C++ 这里有一些字符串问题,c++,string,codeblocks,C++,String,Codeblocks,我正在做一个蒸汽机器人。我需要得到一个变量中字符串的每个字符,我尝试使用向量,但没有成功。从字符串“abc”我得到向量:979899。我不明白那里出了什么问题 int v[100], j=0; unsigned i; string str; cin>>str; for (i=0; i<str.length(); ++i) { v[i]=str.at(i); cout<<str.at(i)<<endl; cout<&l
int v[100], j=0; unsigned i;
string str; cin>>str;
for (i=0; i<str.length(); ++i)
{
v[i]=str.at(i);
cout<<str.at(i)<<endl;
cout<<v[i]<<endl;
}
intv[100],j=0;未签名的i;
字符串str;cin>>str;
对于(i=0;i将int v[100]
更改为char v[100]
将int v[100]
更改为char v[100]
97、98和99是ASCII字符集中字符'a'
、'b'
和'c'
的数值。因此,将它们转换为int
,这是代码将它们的值存储到int
数组中所做的操作,除非主机系统在一个不兼容的字符集。97、98和99是ASCII字符集中字符'a'
、'b'
和'c'
的数值。因此,将它们转换为int
,这是代码将它们的值存储到int
数组中时所做的操作,将给出这些值,除非y我们的主机系统使用不兼容的字符集运行。这是因为您将v声明为int,将其声明为char
char v[100];
int j=0;
unsigned i;
string str;
cin>>str;
for (i=0; i<str.length(); ++i)
{
v[i]=str.at(i);
cout<<str.at(i)<<endl;
cout<<v[i]<<endl;
}
charv[100];
int j=0;
未签名的i;
字符串str;
cin>>str;
对于(i=0;i,这是因为您将v声明为int,将其声明为char
char v[100];
int j=0;
unsigned i;
string str;
cin>>str;
for (i=0; i<str.length(); ++i)
{
v[i]=str.at(i);
cout<<str.at(i)<<endl;
cout<<v[i]<<endl;
}
charv[100];
int j=0;
未签名的i;
字符串str;
cin>>str;
对于(i=0;i请用编写代码的语言标记您的问题当“a”被转换为int时,它是97。这是您不理解/想要的吗?为什么要将字符存储为int?而不是int v[100],j=0;
可能您想要char v[100];int j=0;
或者,在打印之前,您可能想将其转换回字符cout请使用编写代码的语言标记您的问题当“a”转换为int时,它是97。这是您不理解/想要的吗?为什么要将字符存储为int?而不是int v[100],j=0;
也许你想要char v[100];int j=0;
或者,也许你想在打印coutOups之前将其转换回char。这对我来说是愚蠢的,我的错。谢谢。对我来说是愚蠢的,我的错。谢谢。