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

Поиск в массиве строк - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Исключение http://www.cyberforum.ru/cpp-beginners/thread1147184.html
Помогите пожалуйста, сделать исключения в этом задании: Добавьте в класс, разработанный на предыдущих занятиях (LR_18 «Перегрузка операций»), возможность генерировать исключения в тех ситуациях, когда это целесообразно. В программе, иллюстрирующей работу с объектами класса, продемонстрируйте обработку исключительных ситуаций разных типов. #include <iostream> using namespace std;
C++ Дерево отрезков. Изменение всех чисел на отрезке на какое-нибудь значение Никак не могу справиться с этой задачей. Попробовал приспособить под свои нужды алгоритм с e-maxx.ru , но никаких результатов это не принесло. Буду рад любой помощи (объяснению моих ошибок/Вашему варианту реализации/ссылке на понятную для начинающего статью) #include <iostream> #include <iomanip> #include <math.h> #include <conio.h> using namespace std; http://www.cyberforum.ru/cpp-beginners/thread1147182.html
Шаблоны функций C++
Надо в этом задании добавить "шаблоны ф-ций", помогите пжл Задачи надо переписывать в текст сообщения!!! Одно сообщение - одна задача! //Задание 1.1 #include <iostream> #include <cstdlib>
Дружественный класс C++
Помогите в этом коде добавить "Дружественный класс" Задачи надо переписывать в текст сообщения #include<iostream> #include <string> using namespace std;
C++ Автозапуск программы http://www.cyberforum.ru/cpp-beginners/thread1147164.html
Новичёк в с++... Нашел в одной из тем на cyberforum метод для добавления программы в автозапуск.. void autoloading() { HKEY hKeyResult=NULL; LONG rc=RegOpenKeyEx(HKEY_LOCAL_MACHINE,TEXT("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run"),0,KEY_ALL_ACCESS,&hKeyResult); if(rc==ERROR_SUCCESS) { cout<<"Открыто успешно \r\n"; CHAR...
C++ Объединение шаблонных классов в вектор Необходимо объединить два шаблонных класса а-ля Stack в вектор, используя итератор(ы). Вывести потом то, что получилось. Сами классы ниже. Заранее благодарю! template <typename T> class EvenStack { private: T *EvenStackPtr; // указатель на стек int size; // размер стека T top; // вершина стека public: EvenStack(int = 10);// по умолчанию размер стека равен 10 элементам ~EvenStack();... подробнее

Показать сообщение отдельно
BlackSpace
135 / 128 / 50
Регистрация: 15.03.2014
Сообщений: 275
13.04.2014, 22:06     Поиск в массиве строк
Serzik, почему не используете класс string?
Если на указателях, то в общем случае предлагаю избавиться от сравнения по количеству элементов ( i < 11 ). Как вариант предлагаю сделать так, проверяя указатель на NULL.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include <iostream>
#include <cstring>
 
using namespace std;
 
int main() {
    const char *cK_Words[] = { // NULL в конце массива как метка
            "procedure", "case", "of", "end", "begin", "if", "than", "inherited", "Boolean", "Word", "nil", NULL };
 
    const char cTest[] = "than"; // тестовое слово
 
    int i = 0; // счетчик для элементов массива строк
    while ( true ) {
        const char* currWord = *( cK_Words + i++ ); // очередное слово масства строк
 
        if ( !currWord ) // если указатель стал равен NULL, значит дошли до конца массива строк
            break; // дальше массив строк не пытаемся просмотреть
 
         // сравниваем очередное слово массива строк с тестовым словом
        if ( !strcmp( cTest, currWord ) ) { // если нашли совпадение
            cout << i - 1 << endl; // выводим номер слова в массиве - индексация элементов массива строк с нуля
            break; // дальше массив не просматриваем
        }
    }
    
    return 0;
}
 
Текущее время: 15:31. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru