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

СИ++ и контроль переполнения - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Шифрование/дешифрование: тасование бит % http://www.cyberforum.ru/cpp-beginners/thread381056.html
Лабораторная работа по предмету: Теория информации и Кодирования. Название: "шифрование/дешифрование: тасование бит %" Условие выполнения: Шифрование/дешифрование - тасование бит. Размеры групп как % от общей длины в битах шифруемого сообщения определяются ключом. Два очередных числа ключа определяют размеры групп A и В. Длина ключа – 10 чисел. Ключ шифрования – KD. ДСЧ должен быть...
C++ напишите функцию решения линейного уравнения напишите функцию решения линейного уравнения вида ах+b=0 и организуйте её вызов в основном теле программы. Результат выведите на экран. Заранее спасибо! http://www.cyberforum.ru/cpp-beginners/thread381050.html
помогите исправить ошибки C++
Соседями элемента А с индексом ij в матрице назовем элементы A с индексом kl c i - 1 <= k <= i+1, j-1<=l<=j+1, (k,l) не =(i,j). Операция сглаживания матрицы дает новую матрицу того же размера, каждый элемент который получается как среднее арифметическое имеющихся соседей соответствующего элемента исходной матрицы. Построить результат сглаживания заданной вещественной матрицы размером 10 на 10. ...
C++ Неправильно вычисляется минимальное значение в массиве
#include <stdio.h> #include <iostream.h> #include <conio.h> int main() { int max; int min; int a={3,5,8,2,5,8,5,6,9,16}; for(int i=0; i<10;i++) {
C++ Поиск слова в строке http://www.cyberforum.ru/cpp-beginners/thread381022.html
Есть переменная search стринг типа, в которую введено с клавы слово. Нужно найти это слово в текстовом файле и вывести полностью строку, в котором хранится это слово. Помогите плиз, а то чот никак не вдуплю...
C++ Класс "Мост". Синтаксические ошибки. Народ помогите переделать класс: #include<iostream> using namespace std; class most { char name ; unsigned int length; unsigned int height; public: void InArray(most *mostiki, int len); подробнее

Показать сообщение отдельно
LosAngeles
Заблокирован
11.11.2011, 14:30     СИ++ и контроль переполнения
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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
/**
    OVERFLOW_ASSERT(label) macro
        throw exception if OF == 1 || CF == 1
    params:
        label - name of label for compiler, so avoid of using the same name twice!
    return:
        code for MSVC or code for g++
*/
#if defined(_MSC_VER) && (_MSC_VER >= 1020)
    #define OVERFLOW_ASSERT(label) \
    __asm { JNO label }; \
    __asm { JNC label }; \
    throw std::overflow_error("This is SPARTAAAA!"); \
label:
#elif defined(__GNUG__)
    #define OVERFLOW_ASSERT(label) \
    __asm__ ("JNO label" \
            "JNC label"); \
    throw std::overflow_error("This is SPARTAAAA!"); \
    __asm__ ("label:");
#endif
 
 
 
template< typename _Tp >
struct var
{
    _Tp data;
 
    var( const _Tp d ) : data(d) {};
 
    var<_Tp> & operator+=( const var<_Tp> d )
    {
        data += d.data;
        OVERFLOW_ASSERT(addition)
        return *this;
    }
 
    var<_Tp> & operator*=( const var<_Tp> d )
    {
        
        data *= d.data;
        OVERFLOW_ASSERT(multiplication)
        return *this;
    }
 
    _Tp & operator*()
    {
        return data;
    }
 
    operator _Tp()
    {
        return data;
    }
};
Добавлено через 9 минут
talis, кстати говоря в чём смысл 44 строки в твоём листинге? там же built-in оператор используется, и как бы нельзя проверить переполнение, а то я уже было обрадовался
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru