Как Вы находите диапазон значений, которые целые типы могут представить в C++?

Это padding-top, что создает эту проблему. Если вы хотите увеличить поле ввода, используйте height вместе с width вместо padding. Конечно, это зависит от того, чего вы пытаетесь достичь. Если вы хотите увеличить поле ввода и текст в середине поля, вы можете сделать что-то вроде этого:

input {
	height: 100px;
	width: 500px;
        text-align: center;
}

input[type=text] {
	border: 2px solid darkgrey;
	border-radius: 10px;
}
<input type='text'/>

11
задан Bill the Lizard 6 November 2012 в 00:42
поделиться

7 ответов

C стиль

limits.h содержит минуту и макс. значения для ints, а также других типов данных, которые должны быть точно, в чем Вы нуждаетесь:

#include <limits.h> // C header
#include <climits> // C++ header

// Constant containing the minimum value of a signed integer (–2,147,483,648)
INT_MIN; 

// Constant containing the maximum value of a signed integer (+2,147,483,647)
INT_MAX;

Поскольку полный список констант и их общих ценностей проверяет: Википедия - limits.h


Стиль C++

Существует основанный на шаблоне метод C++, поскольку другие комментаторы упомянули, что использовали:

  #include <limits>

  std::numeric_limits

который похож:

  std::numeric_limits<int>::max();

и это может даже сделать, более лукавым вещам нравится, определяют количество возможных цифр или подписывается ли тип данных или нет:

  // Number of digits for decimal (base 10)
  std::numeric_limits<char>::digits10;

  // Number of digits for binary
  std::numeric_limits<char>::digits;

  std::numeric_limits<unsigned int>::is_signed;
38
ответ дан 3 December 2019 в 00:53
поделиться

Смотрите на std::numeric_limits

9
ответ дан 3 December 2019 в 00:53
поделиться

Почему не только быть уверенным и использовать числовые типы повышения?

т.е.:

boost::uint32_t
boost::int32_t

и т.д.

6
ответ дан 3 December 2019 в 00:53
поделиться

Можно использовать типы, определенные в stdint.h (или cstdint при использовании C++) которые являются частью стандарта C99. Это определяет типы с такими именами как int32_t, uint8_t, int64_t, так на, которые, как гарантируют, будут портативными и независимыми от платформы.

Для получения дополнительной информации: stdint.h

3
ответ дан 3 December 2019 в 00:53
поделиться

Используйте sizeof() оператор в C++ для определения размера (в байтах) типа значения. Стандартный заголовочный файл библиотеки limits.h содержит пределы диапазона для типов целочисленного значения. Можно запустить следующую программу для изучения размера и пределов диапазона для целых типов в системе.

#include <stdlib.h>
#include <iostream>
#include <limits>

using namespace std;

int main(int argc, char** argv) {

    cout << "\nCharacter Types" << endl;
    cout << "Size of character type is " << sizeof(char) << " byte." << endl;
    cout << "Signed char min: " << SCHAR_MIN << endl;
    cout << "Signed char max: " << SCHAR_MAX << endl;
    cout << "Unsigned char min: 0" << endl;
    cout << "Unsigned char max: " << UCHAR_MAX << endl;

    cout << "\nShort Int Types" << endl;
    cout << "Size of short int type is " << sizeof(short) << " bytes." << endl;
    cout << "Signed short min: " << SHRT_MIN << endl;
    cout << "Signed short max: " << SHRT_MAX << endl;
    cout << "Unsigned short min: 0" << endl;
    cout << "Unsigned short max: " << USHRT_MAX << endl;

    cout << "\nInt Types" << endl;
    cout << "Size of int type is " << sizeof(int) << " bytes." << endl;
    cout << "Signed int min: " << INT_MIN << endl;
    cout << "Signed int max: " << INT_MAX << endl;
    cout << "Unsigned int min: 0" << endl;
    cout << "Unsigned int max: " << UINT_MAX << endl;

    cout << "\nLong Int Types" << endl;
    cout << "Size of long int type is " << sizeof(long) << " bytes." << endl;
    cout << "Signed long min: " << LONG_MIN << endl;
    cout << "Signed long max: " << LONG_MAX << endl;
    cout << "Unsigned long min: 0" << endl;
    cout << "Unsigned long max: " << ULONG_MAX << endl;

    return (EXIT_SUCCESS);
}
2
ответ дан 3 December 2019 в 00:53
поделиться
sizeof(int)
-5
ответ дан 3 December 2019 в 00:53
поделиться

Вы можете получить диапазон любого типа данных, применив следующую формулу:

[- 2 степени (N-1)] до {[+2 степени (N-1)] - 1}

Где «N» - ширина типа данных, например, в JAVA ширина int равна 32, следовательно, N = 32.

Попробуйте, и вы получите.

0
ответ дан 3 December 2019 в 00:53
поделиться
Другие вопросы по тегам:

Похожие вопросы: