|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
21.02.2023, 19:37 | #1 |
Регистрация: 21.02.2023
Сообщений: 8
|
структуры в Си
Задан шаблон структурного типа:
Код:
Для примера: Результат 3 |
22.02.2023, 04:31 | #2 |
Форумчанин
Регистрация: 26.10.2022
Сообщений: 119
|
Это на какой платформе получается 3?
Код:
Код:
|
22.02.2023, 06:42 | #3 |
фрилансер
Форумчанин
Регистрация: 11.10.2019
Сообщений: 969
|
кто писал этот бред? Это не шаблон (а в Си вообще нет шаблонов, если что)
это - структура подправленный вариант решения Код:
Код:
Код:
во втором случае - разница двух указателей на int , в штуках Последний раз редактировалось BDA; 23.02.2023 в 05:04. |
23.02.2023, 04:02 | #4 |
Форумчанин
Регистрация: 26.10.2022
Сообщений: 119
|
Алексей1153, начинающим программистам лучше не связываться с типом size_t, потому что беззнаковая арифметика -- грабли:
https://programmersforum.ru/showthread.php?t=344535 Да и во «взрослых» программах тип size_t редко когда реально нужен. |
23.02.2023, 07:44 | #5 |
фрилансер
Форумчанин
Регистрация: 11.10.2019
Сообщений: 969
|
Пётр Седов, у них нет выбора, связываться или не связываться. Они им сразу пользуются, если используют массив или вектор. Использование int для размеров и индексов - это некорректно
при попытке вычитать size_t из size_t необходимо сначала их сравнить. Это придётся делать и в детских, и во взросных программах |
24.02.2023, 05:47 | #6 | ||||
Форумчанин
Регистрация: 26.10.2022
Сообщений: 119
|
Цитата:
Цитата:
https://github.com/id-Software/DOOM-...eo/idlib/Str.h Цитата:
Цитата:
* Авторы Java вообще отказались от типов unsigned int, unsigned long. * Авторы C++ добавили функцию std::ssize (signed size). |
||||
24.02.2023, 08:51 | #7 |
фрилансер
Форумчанин
Регистрация: 11.10.2019
Сообщений: 969
|
Пётр Седов, не надо вводить новичков в заблуждение Есть тип size_t, им надо пользоваться.
|
24.02.2023, 09:28 | #8 | |||
Старожил
Регистрация: 15.02.2010
Сообщений: 15,709
|
Цитата:
Цитата:
2. Если использовать, то сразу обкладывать ассертами, чтобы сюрпризов не было. Цитата:
А вы мотивационную часть по std::ssize читали? |
|||
24.02.2023, 09:35 | #9 |
фрилансер
Форумчанин
Регистрация: 11.10.2019
Сообщений: 969
|
я ещё добавлю, что переполнение беззнаковой переменной - это нормальная ситуация с точки зрения языка. А переполнение знаковой переменой - это UB
|
24.02.2023, 09:50 | #10 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,331
|
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Передача структуры из программы на c# в dll на c++ и получение структуры из dll | iukash | Общие вопросы .NET | 0 | 07.05.2013 16:03 |
Динамические структуры данных, списковые структуры (надо разобраться что делает программа) | _4Alex4_ | Помощь студентам | 1 | 14.11.2012 07:39 |
Написание программ (древовидные структуры, структуры неспециального вида и т.д.) | Green Gin | Фриланс | 2 | 27.04.2012 15:26 |
Управляющие структуры. Программирование алгоритмов разветвляющейся структуры. | Лёнка | Компоненты Delphi | 1 | 23.04.2012 15:03 |
структуры в С++ | серг | Общие вопросы C/C++ | 2 | 13.12.2009 15:08 |