2015-06-14 2 views
-1

Я пытаюсь ввести в массив два `backqoutes. Но он вводит одинарную цитату. Не могли бы вы мне помочь?Замена символа в строке

Вход:

abc"cde"fgh"ijkl" 

Ouput:

abc``cde''fgh``ijkl'' 

Мой код:

#include <stdio.h> 
#include <iostream> 
#include <cstring> 

using namespace std; 

int main() 
{ 
    string mystr; 
    long int i=0,j=0,l; 
    while(getline (cin, mystr)) 
    { 
     // l=strlen(mystr); 
     l=mystr.length(); 
     for(i=0;i<l;i++) 
     { 
      if (mystr[i]=='"') 
      { 
       j=j+1; 
       if(j%2==1) 
        mystr[i]='``'; //Problem is here 
       else 
        mystr[i]='"'; 
      } 
     } 
     cout << mystr; 
     i++; 
    } 
    return 0; 
} 
+0

Счастье за ​​мою ошибку – jisan

ответ

1

Это C++. Однако «` »- это не символ, а 2 символа. Использовать конкатенацию, а не как

Result += "``"; 
Смежные вопросы