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

Что если число будет слишком большим и не поместиться в int? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Заменить чтение из файла аналогом fstream http://www.cyberforum.ru/cpp-beginners/thread1121423.html
char fileName; printf("Enter file name: "); scanf("%255s", fileName); FILE *open = fopen(fileName, "r"); if(open) while(!feof(open)) { fscanf(open, "%2d", &choice); if(choice == 1) first_type + choice;
C++ Передача параметров функциям. Можно ли изменить этот параметр внутри функции Доброго времени суток, господа знатоки.В универе препод задал сделать проверку входных данных на ошибку.Я полазил по форумам и нашел вот такой вариант: double number; while ((cin >> number).fail() || cin.get() != '\n')//цикл который повторяется пока не будет присвоено значение переменной number { cin.clear(); cin.sync(); } Но потом меня посетила идея написать... http://www.cyberforum.ru/cpp-beginners/thread1121411.html
C++ Вставить функцию в код по подсчету времени на нахождения ключа в массиве (бинарный поиск)
помогите вставить функцию в код по подсчету времени на нахождения ключа в массиве(бинарный поиск) . вот код #include <stdlib.h> #include <iostream> #include <windows.h> #include <cmath> #include <iomanip> #include <limits.h> using namespace std;
C++ Перегрузка конструкторов (создание класса Matrix, перемножение матриц)
Помогите пожалуйста с умножением матриц Добавлено через 20 секунд #include <iostream.h> #include <conio.h> #include <stdio.h> #include <stdlib.h> #include <math.h> #define N 4 class Matrix{
C++ Составить программу, считающую нормы двух гауссовых чисел http://www.cyberforum.ru/cpp-beginners/thread1121369.html
Надо составить программу считающая нормы двух гауссовых чисел(комплексные числа с целыми коэф.). С помощью алгоритма евклида вычислить нод и линейные представления для них. сделать проверку. Можно ли как то реализовать это на С++. Заготовка программы есть using namespace std; struct Complex { /*определяем структуру для комплексных чисел*/ double re/*действительная часть*/, im/*мнимая...
C++ Удалить из файла абзац с номером N 2)Дано число N и текстовый файл. Удалить из файла абзац с номером N (абзацы отделяются друг от друга одной или несколькими пустыми строками и нумеруются от 1). Пустые строки, предшествующие и следующие за удаляемым абзацем, не удалять. Если абзац с данным номером отсутствует, то оставить файл без изменений. Зарание спасибо! :p:-[ подробнее

Показать сообщение отдельно
Tulosba
:)
Эксперт С++
4378 / 3221 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
18.03.2014, 12:30     Что если число будет слишком большим и не поместиться в int?
Цитата Сообщение от alsav22 Посмотреть сообщение
Стандарт что-нибудь по этому поводу говорит?
22.4.2.1.2/3 Stage 3:
The numeric value to be stored can be one of:
— zero, if the conversion function fails to convert the entire field. ios_base::failbit is assigned to err.
— the most positive representable value, if the field represents a value too large positive to be represented in val. ios_base::failbit is assigned to err.
— the most negative representable value or zero for an unsigned integer type, if the field represents a value too large negative to be represented in val. ios_base::failbit is assigned to err.
— the converted value, otherwise.
Цитата Сообщение от alsav22 Посмотреть сообщение
У меня такое выводит: -858993460.
Это скорее всего просто не инициализированное значение переменной. У меня 2010 студия например так же себя ведет. Т.е. получается, что не по стандарту. Хотя цитата ведь из C++11, а в C++03 могло быть другое поведение, хотя бы потому, что тогда не было strtoll().
 
Текущее время: 13:37. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru