[英]String Conversion in C++
我試圖將每個A轉換為Q,然后將B轉換為W,將C轉換為E。
我收到了這段代碼,但是它不起作用。 我是C ++的新手,非常感謝您的幫助
#include <iostream>
#include <string>
using namespace std;
void convert(string& s)
{
for (int i = 0; i < s.length(); i++)
{
if (i = 'A')
{
s[i] = 'Q';
}
else if (i = 'B')
{
s[i] = 'W';
}
else if (i = 'C')
{
s[i] = 'E';
}
}
}
int main()
{
string s;
cout << "enter string" << endl;
getline(cin, s);
convert(s);
cout << s;
return 0;
}
=
和==
的經典新手錯誤。 前者是賦值運算符,而后者則檢查相等性。
將if
語句中的所有=
替換為==
。 另外, if
語句中的i
應該替換為s[i]
。 因此,您的代碼將是:
if (s[i] == 'A')
....
在編譯器上啟用更多警告將警告您。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.