Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Hunter9494
 Аватар для Hunter9494
21 / 18 / 3
Регистрация: 29.10.2012
Сообщений: 154
#1

Функция strncmp - C++

20.04.2014, 18:56. Просмотров 262. Ответов 3
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
int main()
{
    setlocale(LC_ALL,"Rus");
  char droids[][10] = { "R2D2" , "C3PO" , "R2A6" };                            // имеющиеся дроиды
 
  cout <<  "Ищете R2-дроида астромеханика...\n";
 
  for (int counter = 0 ; counter <= 2 ; counter++) // проход по дроидам
    if ( strncmp( droids[counter], "R2", 2 )==0 ) //сравниваем первые два символа строк
    {
  cout << "дроид [+_+] >> " << droids[counter] << "\n";
    }
    system("pause");
  return 0;
}
так работает)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
int main()
{
    setlocale(LC_ALL,"Rus");
  char droids[][10] = { "R2D2" , "C3PO" , "R2A6" };                            // имеющиеся дроиды
 char k[2];
 cin.getline(k,2);
  cout <<  "Ищете R2-дроида астромеханика...\n";
 
  for (int counter = 0 ; counter <= 2 ; counter++) // проход по дроидам
    if ( strncmp( droids[counter], k, 2 )==0 ) //сравниваем первые два символа строк
    {
  cout << "дроид [+_+] >> " << droids[counter] << "\n";
    }
    system("pause");
  return 0;
}
а вот так нет ( Почему?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.04.2014, 18:56     Функция strncmp
Посмотрите здесь:

C++ Функция
Функция C++
C++ Функция
Функция в с++ C++
функция C++
Функция С++ C++
Напишите варианты библиотечных функций strncpy, strncat и strncmp C++
C++ Функция
C++ При повторном использовании в strncmp не сохраняется введенный символьный массив
не работает strncmp - нет доступа к памяти C++
Аналог strncpy и strncmp для типа string C++
C++ Сравнение строк с использованием функции strncmp

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
zss
Модератор
Эксперт С++
 Аватар для zss
6112 / 5715 / 1849
Регистрация: 18.12.2011
Сообщений: 14,600
Завершенные тесты: 1
20.04.2014, 18:59     Функция strncmp #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от Hunter9494 Посмотреть сообщение
char k[2];
надо char k[3];
3-ий символ - терминальный ноль
Hunter9494
 Аватар для Hunter9494
21 / 18 / 3
Регистрация: 29.10.2012
Сообщений: 154
20.04.2014, 19:05  [ТС]     Функция strncmp #3
Цитата Сообщение от zss Посмотреть сообщение
надо char k[3];
Странно , все равно не работает(

Добавлено через 3 минуты
Цитата Сообщение от Hunter9494 Посмотреть сообщение
Странно , все равно не работает(
А нет , если после ввода k , нажать на пробел все работает))
zss
Модератор
Эксперт С++
 Аватар для zss
6112 / 5715 / 1849
Регистрация: 18.12.2011
Сообщений: 14,600
Завершенные тесты: 1
20.04.2014, 19:06     Функция strncmp #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
C++
1
2
char k[3];
 cin.getline(k,3);
Yandex
Объявления
20.04.2014, 19:06     Функция strncmp
Ответ Создать тему
Опции темы

Текущее время: 13:30. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru