那里有一些字符串问题
Some string problems there
我正在为 Steam 优惠制作一个机器人。而且我需要在变量中获取字符串的每个字符,我尝试使用向量但它没有用。从字符串 "abc" 我得到了向量:97 98 99。我不明白那里出了什么问题..
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;
}
我是新手,所以请帮帮我。我在这里做错了什么?
将int v[100]
更改为char v[100]
97、98、99分别是字符'a'
、'b'
、'c'
在ASCII字符集中的数值。因此,将它们转换为 int
,这是您的代码为了将它们的值存储到 int
数组中所做的,将给出这些值,除非您的主机系统使用不兼容的字符集运行。
那是因为你将 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;
}
我正在为 Steam 优惠制作一个机器人。而且我需要在变量中获取字符串的每个字符,我尝试使用向量但它没有用。从字符串 "abc" 我得到了向量:97 98 99。我不明白那里出了什么问题..
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;
}
我是新手,所以请帮帮我。我在这里做错了什么?
将int v[100]
更改为char v[100]
97、98、99分别是字符'a'
、'b'
、'c'
在ASCII字符集中的数值。因此,将它们转换为 int
,这是您的代码为了将它们的值存储到 int
数组中所做的,将给出这些值,除非您的主机系统使用不兼容的字符集运行。
那是因为你将 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;
}