roboforum.ru

Технический форум по робототехнике.

Сравнение строк

Сравнение строк

Montoya » 23 июн 2009, 18:29

Стоит такая задача, передать в МК по USART слово, если это слово равно "temp", то отправить на ПК температуру. Я написал такой код (убрал лишнее):
Код: Выделить всёРазвернуть
unsigned char ch[5];
gets(ch,4);
if (ch == "temp") {
puts(buffer);
}

но при это ничего не происходит. Я так понимаю условие if (ch == "temp") не выполняется. "temp" - 5 (temp и \0 ) символов, ch - получается 4, т.е. нет символа конца строки. Пробовал так ch[4] = '\0'; , не помогло, в чем моя ошибка? :oops:

Re: Сравнение строк

Виталий » 23 июн 2009, 18:41

Используй функцию strncmp или strcmp

Re: Сравнение строк

Montoya » 23 июн 2009, 19:11

Ааааа, гениально! Спасибо, работает :good: :beer:


Rambler\'s Top100 Mail.ru counter