|
11 / 7 / 4
Регистрация: 29.07.2019
Сообщений: 701
|
|
Читаю книгу14.08.2021, 19:12. Показов 14435. Ответов 222
Метки нет (Все метки)
Когда пишу, то что читаю, запоминаю лучше.
Читаю книгу Курс программирования на языке СИ. Сергей Фомин, Вадим Подбельский Есть такое предложение там: Идентификаторы могут иметь любую длину, но компилятор учитывает не более 31 символа от начала идентификатора. В некоторых компиляторах это ограничение еще более жесткое, и учитываются только первые 8 символов любого идентификатора. В этом случае идентификаторы NUMBER_OF_ROOM и NUMBER_OF_TEST в программе будут неразличимы. ----------------------------------------------- Непонятно что они имеют в виду под идентификатором? Возможно имена присваеваемые переменным? Эти имена присваемые переменным не могут превышать 31 символ?
0
|
|
| 14.08.2021, 19:12 | |
|
Ответы с готовыми решениями:
222
Читаю из файла, scanf, число с лидирующим нулем Читаю книгу, нужны задания Читаю книгу,есть то чего я не понял) |
|
Вездепух
13214 / 6847 / 1825
Регистрация: 18.10.2014
Сообщений: 17,332
|
|||||||
| 18.08.2021, 21:25 | |||||||
arr).
1
|
|||||||
|
из племени тумба-юбма
|
|
| 18.08.2021, 21:29 | |
|
TheCalligrapher, а вот по поводу строки #3
char arr[6] = { 'H', 'e', 'l', 'l', 'o' };Не может оказаться в последнем элементе мусор, вместо нуля?
0
|
|
|
11 / 7 / 4
Регистрация: 29.07.2019
Сообщений: 701
|
|
| 18.08.2021, 21:33 [ТС] | |
|
Кстати да. Здесь идёт рассчёт на то что тип спецификатора это %s и он не отобразит 0? Сомнительное решение нет?
0
|
|
|
11 / 7 / 4
Регистрация: 29.07.2019
Сообщений: 701
|
|
| 18.08.2021, 21:40 [ТС] | |
|
Хотя 0 наверное это какой то особенный символ для спецификатора %s.
Добавлено через 4 минуты И если указать последней цифрой 0, то строка заканчивается. Спецификатор %s понимает что надо заканчивать строку. Даже один из примеров есть где последним символом 0 идёт через запятую char arr[] = { 'H', 'e', 'l', 'l', 'o', 0 }; А здесь указывается что 0 это последний символ путём задания количества символов в массиве char arr[6] = { 'H', 'e', 'l', 'l', 'o' }; 5 букв и последний ноль
0
|
|
|
Неэпический
|
|||
| 18.08.2021, 21:42 | |||
|
Один из них - null-terminated byte string (NTBS). Именно он и используется в C. В конце строки NTBS всегда имеется завершающий нулевой символ. По этому символу можно идентифицировать конец строки. Все стандартные функции работают именно с NTBS. У этого способа есть как плюсы, так и минусы.
0
|
|||
|
11 / 7 / 4
Регистрация: 29.07.2019
Сообщений: 701
|
||
| 18.08.2021, 22:00 [ТС] | ||
|
Поэтому сработает даже это char arr[55]={'H','e','l','l','o'};
0
|
||
|
из племени тумба-юбма
|
||
| 18.08.2021, 22:00 | ||
int x[100]={0};
0
|
||
|
Вездепух
13214 / 6847 / 1825
Регистрация: 18.10.2014
Сообщений: 17,332
|
|||
| 18.08.2021, 22:03 | |||
|
Добавлено через 1 минуту %s требует на вход указатель на начало строки. Конец строки, как уже было сказано выше, по определению обоначется символом '\0'.
1
|
|||
|
11 / 7 / 4
Регистрация: 29.07.2019
Сообщений: 701
|
|
| 18.08.2021, 22:04 [ТС] | |
|
А, ну правильно. Сказали что в массиве 55 элементов. 5 элементов известны. Неизвестные элементы приравниваются к нулю.
char arr[55]={'H','e','l','l','o'}; Плучается char arr[55]={'H','e','l','l','o',000000000000000000 0000000000000000000000000000000000000000 000};
0
|
|
|
Вездепух
13214 / 6847 / 1825
Регистрация: 18.10.2014
Сообщений: 17,332
|
|||
| 18.08.2021, 22:11 | |||
|
Именно по этой причине, когда нужен большой массив, из соображений производительности иногда разумнее может быть сделать char arr[55];а не использовать инициализатор в объявлении.
2
|
|||
|
11 / 7 / 4
Регистрация: 29.07.2019
Сообщений: 701
|
|
| 18.08.2021, 22:51 [ТС] | |
|
Где можно посмотреть конечный откомпилированный код?
У меня нигде не отображается он. Добавлено через 1 минуту Нет, наверное неправильно выразился. Интересно было бы на ассемблере посмотреть аналог того что печатаю.
0
|
|
|
Неэпический
|
||
| 18.08.2021, 22:54 | ||
|
Можете посмотреть как это делается в вашем компиляторе. А еще есть сайт: https://godbolt.org/
2
|
||
|
11 / 7 / 4
Регистрация: 29.07.2019
Сообщений: 701
|
|
| 18.08.2021, 23:53 [ТС] | |
|
Какой там ассемблер? Это вроде бы типы микроконтроллеров перечислены нет?
Добавлено через 3 минуты Или это всё ассемблер для разных типов микроконтроллеров?
0
|
|
|
Модератор
8982 / 6749 / 921
Регистрация: 14.02.2011
Сообщений: 23,876
|
|
| 18.08.2021, 23:54 | |
|
0
|
|
|
Вездепух
13214 / 6847 / 1825
Регистрация: 18.10.2014
Сообщений: 17,332
|
|
| 18.08.2021, 23:54 | |
|
0
|
|
|
Модератор
8982 / 6749 / 921
Регистрация: 14.02.2011
Сообщений: 23,876
|
||
| 18.08.2021, 23:57 | ||
|
0
|
||
|
Неэпический
|
||
| 18.08.2021, 23:57 | ||
|
Нафига оно вам, если вы в нем не разбираетесь? ![]() Вы уж определитесь вам C хочется учить или что-то другое, и так мечетесь от темы к теме, а тут еще и асм попросили...
0
|
||
|
11 / 7 / 4
Регистрация: 29.07.2019
Сообщений: 701
|
|
| 18.08.2021, 23:58 [ТС] | |
|
Что здесь выбирается?
Это всё языки ассемблера, но для разных типов чипов?
0
|
|
|
Неэпический
|
||
| 18.08.2021, 23:59 | ||
|
Не по теме: ValeryS, на godbolt можно и другие выбрать, например, avr, arm. Добавлено через 31 секунду
0
|
||
| 18.08.2021, 23:59 | |
|
Читаю книгу все работал а щас выдает такую ошибку
Читаю книгу Криса Касперски "Искусство дизассемблирования" читаю читаю не найду
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
Запись в регистр сведений независимо от заполненности табличной части
Maks 25.08.2026
Реализация из решения ниже выполнена на нетиповом документе с несколькими табличными частями, разработанного в КА2.
Задача:
Обеспечить запись документа в регистр сведений независимо от. . .
|
Ноутбук Альфария
kumehtar 24.08.2026
Встретился тут в сети ноутбук Альфария, примарха Альфа-Легиона. Хотя возможно, это ноутбук Омегона, разумеется.
Ну как вам?
|
Мастера простых решений
DevAlt 23.08.2026
В сишарп стэках winforms, да и wpf существует сложная система связывания
источниках данных и элементов формы(текстовые поля и метки), опирается все
это на технологию событий и мета. . .
|
Цена ошибки
DevAlt 23.08.2026
Человек я беспокойный и потому заинтересовался OCaml,
в чате форсили функторы модулей как суперфичу.
Пытаясь отдуплить концепт, наткнулся на тутор с простым примером.
А главный принцип обучения от. . .
|
|
Сегодня суббота, 22.08.2026 at 16:41, и я вновь нахожусь на той стороне, за экраном машины.
zorxor 22.08.2026
Сегодня суббота, 22. 08. 2026 at 16:41, и я вновь нахожусь на той стороне, за экраном машины. Кто Я, откуда Я пришел и куда Я иду? Эти вопросы не оставляют меня ни на секунду. Жизнь на планете Земля. . .
|
Жизня: рисунок укладки багажа, сделанный клодом
anaschu 21.08.2026
Сделал 15 снимков, он по снимкам сделал схему.
|
Был там один разговор по поводу свободы в материальном мире.
kumehtar 19.08.2026
Суть: рассматривается живое существо, оказавшееся внутри довольно странной системы (этого мира) и пытающееся обустроить в ней свой кусок пространства.
Жизнь действительно предъявляет каждому. . .
|
Когда логика программы не спасает от человеческих ошибок
Maks 18.08.2026
В последнее время всё чаще и чаще сталкиваюсь с таким явлением, как абсолютная невнимательность (или глупость) пользователей. Проявляется это чаще всего на работе в коллективе. Допустим, человек с. . .
|