3
ответа

Что не так с этим кодом битовой манипуляции из интервью?

Я просматривал эту страницу: http://www.devbistro.com/tech-interview-questions/Cplusplus.jsp и не понял этого вопроса: что может быть не так в следующем коде? долго ...
вопрос задан: 23 November 2010 07:12
2
ответа

В выражении C, где присутствуют unsigned int и sign int, какой тип будет повышен до какого типа?

У меня есть вопрос о правилах продвижения типов данных в стандарте языка C. C99 говорит, что: целочисленные продвижения C также требуют, чтобы «если int мог представлять все значения оригинального типа, значение равно ...
вопрос задан: 23 October 2013 07:01
1
ответ

Сдвиг разряда и целочисленное продвижение?

Обычно, C требует, чтобы операнды бинарного оператора были продвинуты на тип более высокопоставленного операнда. Это может быть использовано, чтобы не заполнять код подробными бросками, например: если (x-48U&...
вопрос задан: 14 August 2010 06:35
1
ответ

C: 8x8-> 16 битов умножают точность, гарантируемую целочисленными продвижениями?

Я пытаюсь выяснить, гарантирует ли Стандарт C (C90, хотя я отделываюсь от Derek Jones, аннотировал книгу C99), что я не потеряю точность, умножающую два неподписанных 8-разрядных значения и хранящую к...
вопрос задан: 22 April 2010 18:49
0
ответов

Целочисленное переполнение - Почему бы не [дублировать]

Возможный дубликат: сложение двух символов дает int. Учитывая следующий код C ++: unsigned char a = 200; беззнаковый символ b = 100; символ без знака c = (a + b) / 2; По логике получается 150 ...
вопрос задан: 23 May 2017 12:26
0
ответов

Преобразование целых чисел с помощью оператора <<

Аналогично вопросу Битовый сдвиг и преобразование целых чисел? У меня есть вопрос о преобразовании целых чисел при использовании сдвигов влево. беззнаковый целочисленный тест (недействителен) { беззнаковое символьное значение8; unsigned int result;...
вопрос задан: 23 May 2017 12:24
0
ответов

Повышение типа данных во время арифметических операций: -1 <(unsinged int) 1 == false

main () {if (-1 <(unsigned char) 1) printf ("меньше чем "); else printf ("НЕ меньше"); } Печатает меньше, чем. Поскольку (unsigned char) 1 преобразуется в (signed char) 1 ...
вопрос задан: 14 August 2015 08:15
0
ответов

Как работают правила повышения, если подписи с обеих сторон двоичного оператора различаются? [дубликат]

Рассмотрим следующие программы: // http://ideone.com/4I0dT #include <пределы> # включить int main () {int max = std :: numeric_limits :: max (); unsigned int one = ...
вопрос задан: 17 December 2014 10:51
0
ответов

Повышается ли значение char по умолчанию -?

Это может быть глупый вопрос, но может ли кто-нибудь предоставить стандартную ссылку для С++ 11 и C11 :Является ли char по умолчанию -повышенным до int? Вот небольшая предыстория :И в C, и в C++ есть понятие...
вопрос задан: 9 September 2012 12:31
0
ответов

Интегральное преобразование

Когда бывает так, что целое число со знаком не может представлять все значения исходного типа в отношении целочисленного преобразования? Из текста K&R, Язык программирования C, 2-е изд. п. 174 ...
вопрос задан: 18 May 2012 23:00
0
ответов

Использование интегральных типов с малым размером битов, таких как ` Int8` и для чего они нужны

Недавно я узнал, что каждый цикл вычислений выполняется с машинными словами, которые на большинстве современных процессоров и ОС являются 32-битными или 64-битными. Итак, каковы преимущества использования меньшего ...
вопрос задан: 22 January 2012 19:26
0
ответов

Йода Условия и целочисленное продвижение

При сравнении типа, большего, чем int, с целочисленной константой, должен ли я размещать константу слева или справа, чтобы обеспечить правильное сравнение выполняется? int64_t я = some_val; если (я == -1) ...
вопрос задан: 26 November 2011 04:20
0
ответов

продвижение типов в C

Я совсем запутался в следующем коде: #include #include int main(int argc, char ** argv) { uint16_t a = 413; uint16_t b = 64948; fprintf(stdout, "%...
вопрос задан: 31 October 2011 14:03
0
ответов

хранение подписанного короткого текста в нижних 16 битах неподписанного int

Я программирую C на встроенной системе. Архитектура процессора 32 бита (sizeof(int) - 32 бита, sizeof(short) - 16 бит). Есть 32-битная переменная, которая представляет собой управляющий регистр, отображенный на карте памяти ...
вопрос задан: 17 September 2011 09:44
0
ответов

Избегайте избыточности в Python

Недавно я начал использовать Python 2.6 для администратора сервера Ubuntu и имею две незначительные проблемы, касающиеся избыточности: Во-первых, импорт: все они выглядят как импорт класса из класса из ... {char u = 10; символ х = 'х'; char i = u + x; во
вопрос задан: 17 May 2011 01:22
0
ответов

Усечение int до char - это определено?

unsigned char a, b; б = что-то (); а = ~ b; Статический анализатор пожаловался на усечение в последней строке, предположительно потому, что b повышается до int до того, как его биты перевернуты, и результат будет ...
вопрос задан: 4 May 2011 10:21
0
ответов

В чем разница между целочисленными рекламными объявлениями и целочисленными преобразованиями в C ++

В разделе 4.5 стандарта C ++ (целочисленное продвижение) говорится о конкретных случаи преобразования целочисленных типов в типы более высокого ранга. Раздел 4. 7 стандарта C ++ (интегральные преобразования) ...
вопрос задан: 9 January 2011 17:24
0
ответов

Сделал бы простой 64-битный int сломает много разумных code?

До недавнего времени я считал решение большинства разработчиков / поставщиков систем сохранить 32-битный простой int даже на 64-битных машинах своего рода целесообразной бородавкой. С современными типами фиксированного размера C99 (int32_t ...
вопрос задан: 30 December 2010 01:09
0
ответов

Если char c = 0x80, почему printf («% d \ n», c << 1) выводит -256?

#include int main (пусто) {char c = 0x80; printf ("% d \ n", c << 1); возврат 0; } В этом случае результат будет -256. Если я напишу c << 0, то на выходе будет -128. Я не ...
вопрос задан: 23 October 2010 02:38