Рейтинг:
4
MattTelles
Существует множество проблем с вашим кодом, но он будет компилироваться. Понятия не имею, работает ли это, так как вы не показываете остальную часть своего приложения:
int nSet =0 ;
int nCount=0 ;
string cPrevtag ="";
/* nCount and cPrevtag change with my method calling */
if (nCount == 1 && cPrevtag == "O")
{
nSet = nSet + 1;
}
Как уже отмечали другие, вы не можете сравнить строку с символом ( одинарные кавычки указывают на символ). Кроме того, вы должны использовать == для сравнения. Наконец, ваш комментарий не был закрыт */
Мэтт
Member 12931315
Спасибо Мэтт, я поставил этот комментарий только для вопроса
Рейтинг:
18
OriginalGriff
Две вещи здесь не так:
if (nCount == 1 && cPrevtag = 'O')
1) cPrevtag объявлен как строка, но ваше сравнение с символом - это не разрешено.
2) " = " -это присваивание, а не сравнение: и C# требует булевых результатов (в отличие от C и C++, которые работают с "ненулевым-истинно"). Оператор сравнения -" =="
Попробовать это:
if (nCount == 1 && cPrevtag == "O")
Member 12931315
Привет Грифф
Я пробовал, что это все равно, что сказать оператор '==' не может быть применен к строке операнда
есть ли лучший способ ?
Заранее спасибо
Аджит
[no name]
Тогда ты сделал что-то не так. То, что мы вам сказали, было правильно и действительно работает. Но поскольку вы не любите делиться такими мелочами, как сообщения об ошибках, нам остается только гадать, в чем ваша проблема.
OriginalGriff
Внимательно прочтите мой код: я изменил " = " на "= = "*и" O " на " O"
OriginalGriff
Извините - это не было предназначено для вас - это было предназначено для операции...: румянец:
OriginalGriff
Внимательно прочтите мой код: я изменил " = " на "= = "*и" O " на " O"
Member 12931315
Святая корова, я этого не заметил,проблема решена
Большое спасибо!.
OriginalGriff
Пожалуйста!