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

C++

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 4.92
oxotnik
1590 / 1067 / 33
Регистрация: 21.08.2008
Сообщений: 4,545
Записей в блоге: 1
#1

Что хотел сказать автор? - C++

20.12.2011, 14:05. Просмотров 1674. Ответов 21
Метки нет (Все метки)

Код C++
C++
1
2
#define MAX_SIZE (8192) 
signed char buf[(MAX_SIZE +1) >> 1];


почему нельзя записать:

C++
1
signed char buf[4096];

точнее, чем они могут различаться?
MAX_SIZE используется только в одном месте, больше в коде нигде не используется.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.12.2011, 14:05
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Что хотел сказать автор? (C++):

Внутри участки кода. Прошу опытных сказать что это за вид языка - C++
Здравствуйте!Я до сих пор мучаюсь какие бывают виды c++.вот наконец нашел такойразнообразный код и теперь прошу Вас сказать что код это?...

Новичок пришел с basic на с++ builder и хотел бы узнать что лучше и чем. - C++ Builder
И так пришёл новичок с бейзика на с++ билдер и хотел бы узнать и местных диванных гениев, что лучше и чем. А также самый нужный для...

Создание описания праложения(автор, версия итп) - Visual C++
Где и как такое делается?В некоторых продуктах очень подробно реализуется, выглядит не плохо.

Задание из книги Р.Лафоре. Что автор имел ввиду? - C++
Здравствуйте! Добрался до 7-й главы книги Лафоре и мне непонятно что имел ввиду автор. Хотя, возможно это переводчик так перевел... ...

Что Вы можете сказать о индусе по его коду - C++
Не так давно взялся учить С++, будучи ещё школотой. Читаю книжку С.Прата "Язык программирования С++". Это дело вроде нравится, но вот...

Что можно сказать об этом #include "stdafx.h" - C++
За что оно отвечает и где его можно использовать?! Много раз встречал но так и не понял зачем оно! #include "stdafx.h"

21
fasked
Эксперт С++
4942 / 2522 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
25.12.2011, 00:00 #16
Цитата Сообщение от silent_1991 Посмотреть сообщение
Если для вас легче представить, что число 4 является флагом для второго разряда, а не 100 (1 << 2), что ж, сочувствую
Ну, лично для меня, в понимании равнозначны стили:
C
1
2
3
4
5
6
7
8
9
x << 1
x << 2
x << 3
 
0x01
0x02
0x04
0x08
0x10
0
silent_1991
Эксперт С++
4984 / 3041 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
25.12.2011, 00:10 #17
fasked, ну уж не знаю... В случае 1 << n сразу понятно, что флаг устанавливается в n-м разряде, в отличие от, скажем, 128 (какая это там степень двойки? Надо бы калькулятор всё-же купить...). Ну это я утрируя))
0
fasked
Эксперт С++
4942 / 2522 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
26.12.2011, 10:22 #18
Цитата Сообщение от silent_1991 Посмотреть сообщение
fasked, ну уж не знаю... В случае 1 << n сразу понятно, что флаг устанавливается в n-м разряде, в отличие от, скажем, 128 (какая это там степень двойки? Надо бы калькулятор всё-же купить...). Ну это я утрируя))
После того, как была введена константа, указывающая номер бита, в принципе уже не важно, какой он на самом деле. Потому что числа использоваться все равно не придется.
Отдельно про 128 - я тоже не понимаю так быстро номер бита, если писать в десятичной СС, а вот если в шестнадцатиричной, то все просто (о чем я и хотел сказать на примере).
Код
0x1 - первый
0x2 - второй
0x4 - третий
0x8 - четвертый
0x10 - пятый
0x100 - девятый
0
taras atavin
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
26.12.2011, 11:21 #19
Цитата Сообщение от silent_1991 Посмотреть сообщение
Если для вас легче представить, что число 4 является флагом для второго разряда, а не 100 (1 << 2), что ж, сочувствую... Видимо, программировать вам не надо.
Это я тебе сочувствую, раз тебе даже единицу с нолями приходится вычислять. Мне же проще ввести результат, а в десятичной форме, или для краткости в шестнадцатеричной - вопрос вторичный. Десятичную запись первых 11-ти степеней (начиная с нулевой) и шестнадцатеричную - первых 4-х (также с нулевой) я помню, флаги больше 1024-х в десятичной форме однозначно проигрывают шестнадцатеричному представлению, так как оно компактней, а в нём первые 4 степени соответствуют цифрам, что позволяет быстро и безо всяких вычислений набрать готовый флаг любой степени. До 1024-х систему можно выбрать произвольно. Не задача программы выбирать себе флаги, об этом должен позаботиться девелопер, программа же должна работать с тем, что ей дали. И мои проги так и делают.
0
fasked
Эксперт С++
4942 / 2522 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
26.12.2011, 14:55 #20
Цитата Сообщение от taras atavin Посмотреть сообщение
Это я тебе сочувствую, раз тебе даже единицу с нолями приходится вычислять. Мне же проще ввести результат, а в десятичной форме, или для краткости в шестнадцатеричной - вопрос вторичный. Десятичную запись первых 11-ти степеней (начиная с нулевой) и шестнадцатеричную - первых 4-х (также с нулевой) я помню, флаги больше 1024-х в десятичной форме однозначно проигрывают шестнадцатеричному представлению, так как оно компактней, а в нём первые 4 степени соответствуют цифрам, что позволяет быстро и безо всяких вычислений набрать готовый флаг любой степени. До 1024-х систему можно выбрать произвольно. Не задача программы выбирать себе флаги, об этом должен позаботиться девелопер, программа же должна работать с тем, что ей дали. И мои проги так и делают.
Мы все знаем, что Вы гений. Позвольте уж нас, простым смертным, пообщаться на темы стиля.
1
taras atavin
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
26.12.2011, 14:59 #21
Цитата Сообщение от fasked Посмотреть сообщение
Мы все знаем, что Вы гений.
Единую теорию поля-времени-пространства-материи я не создал.
0
LosAngeles
Заблокирован
26.12.2011, 15:50 #22
встретил в minix3 и сразу вспомнилась эта тема)) /usr/src/kernel/arch/i386/include/arch_proto.h флаги и их маски так записаны
C
1
2
3
4
5
6
7
8
9
10
11
12
13
#define BREAKPOINT_COUNT        4
#define BREAKPOINT_FLAG_RW_MASK     (3 << 0)
#define BREAKPOINT_FLAG_RW_EXEC     (0 << 0)
#define BREAKPOINT_FLAG_RW_WRITE    (1 << 0)
#define BREAKPOINT_FLAG_RW_RW       (2 << 0)
#define BREAKPOINT_FLAG_LEN_MASK    (3 << 2)
#define BREAKPOINT_FLAG_LEN_1       (0 << 2)
#define BREAKPOINT_FLAG_LEN_2       (1 << 2)
#define BREAKPOINT_FLAG_LEN_4       (2 << 2)
#define BREAKPOINT_FLAG_MODE_MASK   (3 << 4)
#define BREAKPOINT_FLAG_MODE_OFF    (0 << 4)
#define BREAKPOINT_FLAG_MODE_LOCAL  (1 << 4)
#define BREAKPOINT_FLAG_MODE_GLOBAL (2 << 4)
довольно наглядно
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.12.2011, 15:50
Привет! Вот еще темы с ответами:

Что хотел автор кода? - JavaScript
Всем доброго времени суток! Сегодня у меня взломали сайт. В файле index.php в самом низу была добавлена строка кода &lt;script...

Хотел бы кое что выяснить - Охлаждение
Какая максимальная и минимальная температура диода PCH является хорошей!

Что можете сказать ? - Программирование
У одной программулки в разделе импортируемых функций есть такие функции, как: CreateRemoteThread ShellExecute ...

Опишите, используя структуру записи, книги(автор,название,год издания).Составьте программу вывода на экран упорядоченного списка книг(по фамилии автор - Turbo Pascal
Опишите, используя структуру записи, книги(автор,название,год издания).Составьте программу вывода на экран упорядоченного списка книг(по...


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

Или воспользуйтесь поиском по форуму:
22
Yandex
Объявления
26.12.2011, 15:50
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru