簡體   English   中英

C ++中的字符串轉換

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM