Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.81/16: Рейтинг темы: голосов - 16, средняя оценка - 4.81
4 / 1 / 0
Регистрация: 09.10.2015
Сообщений: 204

Sizeof

29.11.2015, 16:12. Показов 3449. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
C++
1
int a[] = { 1, 2, 3, 4 },n = sizeof(a) / sizeof(a[0]);
Битый час разбираюсь с этой строкой,но понять не могу.
Мы делим массив "a" на 0-вой элемент в битах,ответ будет в битах или как?
Объясните пожалуйста простым языком
Спасибо
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
29.11.2015, 16:12
Ответы с готовыми решениями:

Sizeof(.) или constexpr size_t tmp = sizeof(.)
sizeof(...) или constexpr size_t tmp = sizeof(...) Как лучше с точки зрения производительности? правильности?

Fwrite (buffer , sizeof(char), sizeof(buffer), pFile)
как записать часть массива чаров? допустим у нас arr; мне надо записать с позиции массива 500 до 600, 100 байтов как записать эту...

sizeof( char * ) & sizeof(char)
Здравствуйте, не могу понять почему sizeof(char *) = 4 а sizeof(char) = 1. Ну с последним ясно , а вот с первым непойму... Может кто-то...

7
48 / 48 / 6
Регистрация: 24.12.2009
Сообщений: 532
29.11.2015, 16:27
sizeof(a) дает, сколько байт занимает весь массив. В данном случае 16 байт (4 элемента по 4 байта)

sizeof(a[0]) - сколько байт занимает 1 элемент массива. В данном случае 4 байта

В вашем примере вы делите 16\4 и получаете n = 4
0
 Аватар для RAFA91
-28 / 35 / 25
Регистрация: 14.06.2013
Сообщений: 1,452
29.11.2015, 16:46
Цитата Сообщение от ilja123 Посмотреть сообщение
по 4 байта
было время когда и 2 байт было.
0
4949 / 2289 / 287
Регистрация: 01.03.2013
Сообщений: 5,991
Записей в блоге: 32
29.11.2015, 18:06
Цитата Сообщение от Kristina_S Посмотреть сообщение
Мы делим массив "a" на 0-вой элемент в битах,ответ будет в битах или как?
Объясните пожалуйста простым языком
Мы делим значение некоей функции от одного аргумента на значение ее же от другого аргумента - следовательно, ответ у нас будет в разах, естественно безразмерных: во сколько раз числитель больше знаменателя.
0
 Аватар для RAFA91
-28 / 35 / 25
Регистрация: 14.06.2013
Сообщений: 1,452
29.11.2015, 18:10
Цитата Сообщение от _Ivana Посмотреть сообщение
естественно безразмерных
байт делишь на байт

размер массива = к-во эл * размер одного элемента отсюда

к-во эл = размер массива / размер одного элемента

с динамическим массивом уже не прокатит
0
4949 / 2289 / 287
Регистрация: 01.03.2013
Сообщений: 5,991
Записей в блоге: 32
29.11.2015, 18:13
Цитата Сообщение от RAFA91 Посмотреть сообщение
байт делишь на байт
так не бывает Паровоз на паровоз в математике не делится, если не перегрузить (перетрактовать) оператор деления для паровозов. А число на число - вполне. Что я и написал.
0
 Аватар для RAFA91
-28 / 35 / 25
Регистрация: 14.06.2013
Сообщений: 1,452
29.11.2015, 18:23
Цитата Сообщение от _Ivana Посмотреть сообщение
Паровоз на паровоз в математике не
зато там ты делишь к-во осей во всем составе на к-во осей в одном вагоне что-бы узнать к-во вагонов.
0
4949 / 2289 / 287
Регистрация: 01.03.2013
Сообщений: 5,991
Записей в блоге: 32
29.11.2015, 18:27
Правильно.
Цитата Сообщение от _Ivana Посмотреть сообщение
Что я и написал.
Рад что вы это поняли. Еще немного, и вы возможно поймете смысл моего ответа про размерность отношения величин одной размерности
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
29.11.2015, 18:27
Помогаю со студенческими работами здесь

sizeof
Подскажите пожалуйста что делаю не так? в базовом классе gameElement, имеется матрица указателей на базовый класс: gameElement* arr; ...

sizeof()
Ребята,объясните пожалуйста для чего нужен sizeof()?А то в книге очень заумно написано...

sizeof() с массивами
Почему такие результаты? Размеры у обоих массивов одинаковые а sizeof() показывает у одного 28, а другого 32 int a = {1, 2, 3, 4, 5,...

оператор sizeof
Добрый вечер! Был сделан тест. Есть класс class A { int a; char b; double c; }; В программе:

Оператор sizeof
Используя оператор sizeof определите и выведите на экран количество байт, необходимых для хранения всех известных Вам простых типов...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru