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

Исключения: индекс массива - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Ошибка http://www.cyberforum.ru/cpp-beginners/thread1102976.html
Не понимаю в чем ошибка (16 строка). Сами формулы, по которым нужно вычислить z: a*b+\arctan{a}^{2} a*h/2 \pi {R}^{2} #include <iostream> #include <math.h> #include <conio.h>
C++ Ошибка в функции Всем доброго суток, не могу понять где ошибка, помогите: #include <iostream> #define N 4 using namespace std; void sortVib(int *mas, int n){ int k = 0, i = 0, tmp = 0, nmi = 0; for ( k = 0; k < n - i ; k++){ nmi = k; for ( i = k + 1; i < n; i++) http://www.cyberforum.ru/cpp-beginners/thread1102968.html
Почему после компиляции получаю число с=4 294 967 265 ? C++
int main() { char *s='c';//кирилица с маленькое int c=s; cout<<"c="<<c<<"\n"; } Почему после компиляции получаю число с=4 294 967 265 ? Я ожидал получить 225, в редакторе текстовый файл в котором есть буква "с" её отображает как 0xE1, если перевести в десятичные получаем 225.
C++ Международные автомобили
Привет всем))) Помогите пожалуйста!Разработать программу: Имеются описания: enum symbols {MEX, RO, HR, GCA, ET, FIN, DK, SK, IND}; enum country {Denmark, Egypt, Finland, India, Mexico, Romania, Slovakia, Croatia, Guatemala}; symbols s; country c; По названию страны c определить международные автомобильные символы s.
C++ SDL cannot find -lmingw32-SDLmain-lSDL http://www.cyberforum.ru/cpp-beginners/thread1102949.html
Всем првиет! Вот пытаюсь установить SDL, что вседал, комплитятор пишет cannot find -lmingw32-SDLmain-lSDL Вот фото:
C++ GTK / C++ проект в Code::Blocks под Windows Библиотека GTK позволяет довольно быстро и просто делать графические приложения под разные операционные системы, к тому же она бесплатная и у нее открытый исходный код. Недостаток ее в том, что по ее настройке в Windows очень мало информации, отчего у новичков возникают сложности с ее освоением. В отличной книге A.Krause об этом тоже ничего нет, но... В Code::Blocks есть визард... подробнее

Показать сообщение отдельно
DrOffset
6851 / 4062 / 927
Регистрация: 30.01.2014
Сообщений: 6,859
22.02.2014, 22:07     Исключения: индекс массива
Цитата Сообщение от dkg_C Посмотреть сообщение
C++
1
2
3
4
5
try {
    if((number_of_elem) < 1 || (number_of_elem) > N) { throw 1; }
    else { cout << mass[number_of_elem-1] << endl; }
}
catch(int) { cout << "Error - "<< number_of_elem <<endl; }
Я бы этот кусок переделал так (код не полный, только иллюстрация):
Кликните здесь для просмотра всего текста
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
28
29
30
31
32
33
34
35
#include <stdexcept>
 
class array_out_of_range
    : public std::out_of_range
{
public:
    array_out_of_range(std::string const & err, size_t idx)
        : std::out_of_range(err), idx_(idx)
    { }
 
    size_t index() const
    {
        return idx_;
    }
 
private:
    size_t idx_;
};
 
int main()
{
    try
    {
        //....
        if(number_of_elem < 1 || number_of_elem > N)
        {
            throw array_out_of_range("array index out of range", number_of_elem);
        }
    }
    catch(array_out_of_range const & e)
    {
        std::cout << "error: " << e.what() << ", index: " << e.index() << std::endl;
    }
    return 0;
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru