LINUX.ORG.RU

Вопрос на собеседовании: sizeof(int)

 


0

1

Интересно мнение С++ разработчиков на ЛОР на следующий вопрос (я ответил верно): Ответьте подробно чему может быть равен sizeof(int)?

P.S. Пожалуйста, ответьте сразу и подробно без помощи гугла или чего-то ещё.

Ответ на: комментарий от Kroz

а char всегда один байт.

еще один клоун

чар не один байт,ни в одной спеке/стандарте Си/С++ об этом не говориться

что и происходит на практике,как выше я сказал-в любом компиляторе где базовый тип char поддерживает UTF-так везде в таких компиляторах char НЕ ОДИН БАЙТ а намного больше

да тотже айринат,выше который-за последний год как минимум трижды на лоре пояснял эту простейшую часть теории

anonymous
()
Ответ на: комментарий от anonymous

в любом компиляторе где базовый тип char поддерживает UTF

Покажи мне, что за ублюдский компилятор считает, что char != 1 байт. И какой чудак на букву «М» этот идиотизм придумал!

anonymous
()

я ответил верно

А откуда ты знаешь, что верно ответил? Тебя что, Страуструп собеседовал?

anto215 ★★
()
Ответ на: комментарий от andreyu

В реальном мире оговаривают целевую платформу, компилятор и его версию.

Правильный ответ №1.

rebforce
()
Ответ на: комментарий от ilovewindows

Блин, для того и придумали sizeof чтобы писать sizeof(int), а не парить мозг чему он равен

Правильный ответ №2.

rebforce
()
Ответ на: комментарий от buddhist

Беги оттуда. Там люди спрашивают вещи, которые не нужно помнить или держать всегда в уме в полноценном виде. Все это решается обращением к нужному разделу стандарта.

Правильный ответ №3.

rebforce
()
Ответ на: комментарий от anonymous

Покажи мне, что за ублюдский компилятор считает, что char != 1 байт

Это вообще не компилятор решает. Это свойство архитектуры.

tailgunner ★★★★★
()
Последнее исправление: tailgunner (всего исправлений: 1)
Ответ на: комментарий от tailgunner

DSP

Блин, ты еще плисины вспомни, где хоть какой размер можно сделать...

Они ж не программируются посредством написания сишного кода и компеляции gcc!

anonymous
()
Ответ на: комментарий от anonymous

Да, Эдди, конечно. Я пытался тебя обмануть, но ты меня раскусил.

tailgunner ★★★★★
()
Ответ на: комментарий от anonymous

Покажи мне, что за ублюдский компилятор считает, что char != 1 байт

msvc (C/C++)

сайзоф чар там выдает от 2 байт и выше

anonymous
()
Ответ на: комментарий от anonymous

причем чар божет быть одновременно и 1 байт и 4(к примеру,может и больше)
это в пределах одного кода,даже в пределах одной функции

если присвоить одному чару asci символ а другому любой из утф

...у меня ужже второй год горит с этого,хоть и напоролся два года назад
делал низкоуровневую утилиту под винду работающую только с винапи(с ситсемными функциями винды)-так ладно что функции винды возвращают «ссылку на символ длинной до 16 байт»,так с символами не поработать си-методами,символ теперь не число(ага удачи работать с 2+байтовыми символами как с числом-ад и израель)

anonymous
()
Ответ на: комментарий от tailgunner

выдает выдает,я за этот год на лоре два раза давал пример хеловрда на 7 строк где выдает

давай на деньги поспорим?

(и да-видно что ты не работаешь с мсфц компилятором,ибо это банальщина на которую каждый натыкается)

anonymous
()
Ответ на: комментарий от vvviperrr

тыж понимаешь, что этот долбаеб wchar в sizeof сует. зачем тебе пример)

Чтобы аргументированно назвать его вот именно так :)

tailgunner ★★★★★
()
Ответ на: комментарий от vvviperrr

wchar=char=__t_char=больше 1 в sizeoff

компилятор сам собирает все char как wchar при опции utf,точнее не все а только те которым явно не присвоено <256 символ

anonymous
()
Ответ на: комментарий от anonymous

чар не один байт,ни в одной спеке/стандарте Си/С++ об этом не говориться

Working Draft, Standard for Programming Language C++

5.3.3 Sizeof
The sizeof operator yields the number of bytes in the object representation of its operand.
...
sizeof(char), sizeof(signed char) and sizeof(unsigned char) are 1

что и происходит на практике,как выше я сказал-в любом компиляторе где базовый тип char поддерживает UTF-так везде в таких компиляторах char НЕ ОДИН БАЙТ а намного больше

Давай рабочий код или сливайся.

Kroz ★★★★★
()
Последнее исправление: Kroz (всего исправлений: 1)
Ответ на: комментарий от anonymous

Анонимусу больше не наливать, он литералы с типами путать начал.

red75prim ★★★
()
Последнее исправление: red75prim (всего исправлений: 1)
Ответ на: комментарий от anonymous

msvc (C/C++)
сайзоф чар там выдает от 2 байт и выше

Что за чушь?

andreyu ★★★★★
()
Ответ на: комментарий от tailgunner

wchar=char

А я думал, таких малограмотных уже не осталось.

Зато он

«делал низкоуровневую утилиту под винду»

andreyu ★★★★★
()
Ответ на: комментарий от mix_mix

Хоть у тебя там троичная система с трайтами из шести трит.

3.9.1 (basic.fundamental) § 7

Types bool, char, char16_t, char32_t, wchar_t, and the signed and unsigned integer types are collectively called integral types. A synonym for integral type is integer type. The representations of integral types shall define values by use of a pure binary numeration system. ⁴⁹
----------------------
49) A positional representation for integers that uses the binary digits 0 and 1, in which the values represented by successive bits are additive, begin with 1, and are multiplied by successive integral power of 2, except perhaps for the bit with the highest position. (Adapted from the American National Dictionary for Information Processing Systems.)

utf8nowhere ★★★
()

любое натуральное могущее уместится в uint (али какой sizeoftype тип считающийся у текущего порождения С++ тип возвращаемым операцией sizeof)

наиболее вероятные(без взаимного порядка частотности) начальные степени двойки с експонентой(тож целой) от 0 до скажем 6.

инные натуральные размеры (кратные не только двойке но и ещё каким либо другим простым) возможны но нишевы.

anonymous
()
Ответ на: комментарий от staseg

гримасса ещё в том

что ожидая от прогера идеального знания спек

сами(сами КАРЛ) считают себя обязаными игнирировать ТК и прочии регламенты регулирующие товарно-денежные отношения свои с таковыми доками спек

----------------------

и это(вышеотмеченое) естественно особенно если знаком с классическим худлитом либо новомодной этологией.

anonymous
()

Равен количеству байт занимаемых типом, размер типа в зависимости от платформы может быть любым кратным двойке на двоичных системах или тройке на троичных в реальности невзирая на стандарты может быть от 1 байта (и то не факт что он 8 битный) до теоретической бесконечности, но в реалиях значения 2/4/8/16

Dron ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.