-
- Возврат структур -- стандартная вещь со времён K&R. А то как бы div() работала бы? Но если маленькие структуры более-менее возвращаются в регистрах, то большие могут потребовать больших объёмов копирования в памяти и лучше по-ссылке (указателю). fk0(96 знак., 31.08.2012 14:01)
- Кстати, широко практикую возврат union для функций типа get_param: SciFi(262 знак., 31.08.2012 14:09)
- Выравнивать нигде/ничего/никогда ненадо? - PlainUser(31.08.2012 14:36)
- Я, например, в эпилоге наблюдаю побайтное заполнение структуры. Притом, что MSP430 - 16и разрядный МК, а в самой структуре есть члены типа float и uint32_t. - rezident(31.08.2012 14:51)
- Где-то/что-то/когда-то и надо, может быть. Но точно не здесь. - SciFi(31.08.2012 14:45)
- Выравнивать нигде/ничего/никогда ненадо? - PlainUser(31.08.2012 14:36)
- Я вообще-то не программист по образованию. Эту специализацию я осваиваю дополнительно по мере необходимости и лишь время от времени. А сомнение мне подкинул как раз профессиональный программист. Вот я и решил испросить помощь зала. - rezident(31.08.2012 14:07)
- Вы хотели сказать "программист профессионального уровня"? :-) SciFi(118 знак., 31.08.2012 14:09)
- Не может значить. Профессия - род занятий человека, вид деятельности. Профессионал - человек, занимающийся определенным видом деятельности. Подразумевается (и только!), что профессионал - опытный в своей области человек. Но это вовсе rezident(130 знак., 31.08.2012 14:23)
- Да ладно. Программист -- это мальчик с мамой папой и квартиркой. Ещё с зеркалкой и велосипедом... (C) gans-spb.livejournal.com - fk0(31.08.2012 14:49)
- Ответ в контексте другого термина - профессионала, а не программиста. - rezident(31.08.2012 14:54)
- Не спорьте! - Профессионал, это очень хороший фильм с одноименным названием. - Make_Pic(31.08.2012 15:14)
- Ответ в контексте другого термина - профессионала, а не программиста. - rezident(31.08.2012 14:54)
- Да ладно. Программист -- это мальчик с мамой папой и квартиркой. Ещё с зеркалкой и велосипедом... (C) gans-spb.livejournal.com - fk0(31.08.2012 14:49)
- Не может значить. Профессия - род занятий человека, вид деятельности. Профессионал - человек, занимающийся определенным видом деятельности. Подразумевается (и только!), что профессионал - опытный в своей области человек. Но это вовсе rezident(130 знак., 31.08.2012 14:23)
- Вы хотели сказать "программист профессионального уровня"? :-) SciFi(118 знак., 31.08.2012 14:09)
- Кстати, широко практикую возврат union для функций типа get_param: SciFi(262 знак., 31.08.2012 14:09)
- ХЗ что в стандартах, но в ИАРе 3.30 для MSP я возвращал структуры. VAI(949 знак., 31.08.2012 13:45)
- Может. "The return type of a function shall be void or an object type other than array type." - SciFi(31.08.2012 13:37)
- Где в стандарте про это сказано? Я вижу в дебаггере, что функция возвращает указатель на структуру. Но у функции еще присутствует эпилог, который копирует содержимое копии структуры, созданной на стеке, в структуру которой присваивается rezident(18 знак., 31.08.2012 13:41)
- И что вас здесь не устраивает? - Bill(31.08.2012 16:20)
- У вас не работает поиск по тексту стандарта? SciFi(54 знак., 31.08.2012 13:44)
- Уже нашел. Раздел 6.9.1 Function definitions пункт 3. rezident(571 знак., 31.08.2012 14:01, ссылка)
- Где в стандарте про это сказано? Я вижу в дебаггере, что функция возвращает указатель на структуру. Но у функции еще присутствует эпилог, который копирует содержимое копии структуры, созданной на стеке, в структуру которой присваивается rezident(18 знак., 31.08.2012 13:41)
- Возврат структур -- стандартная вещь со времён K&R. А то как бы div() работала бы? Но если маленькие структуры более-менее возвращаются в регистрах, то большие могут потребовать больших объёмов копирования в памяти и лучше по-ссылке (указателю). fk0(96 знак., 31.08.2012 14:01)