@4da Хаскель я что-то подзабил учить, а платят мне нынче и вовсе за Python (при этом я ещё и «жертва компьютерного насилия» — под Виндой кодить приходится, то есть) // пытаюсь вызвать сочувствие у тролля!
спасибо, узнал про еще один хороший юзкейс - return printf("shit happened\n"), -1
обычно юзаю в for для каких-нибудь хитрых итерирований. иногда получается вообще все тело в параметры цикла упихать, а-ля
for (char *p = str, int cnt = 0; *p && cnt < MAX; p++, cnt++) ;
@hirthwork > It is typical that a postfix operator will be worse on performance because you have to create another copy before doing the increment
крестопроблемы какие-то. хотя один хуй соптимизируется. так что иди нахуй, пожалуй.
@hirthwork кароч, если два варианта написания кода занимают одно и то же место на экране, то приятнее читать тот код, оптимизировать который компилятору придётся меньше
@hirthwork Имхо, наоборот: не заоптимизированный вручную по самые уши код читать легче. Зачем тебе вообще оптимизирующий компилятор, если ты делаешь за него часть работы?
@hirthwork вот, кстати, пример из реальной жизни попался:
```int _do_help(cmd_tbl_t *cmd_start, int cmd_items, cmd_tbl_t *cmdtp, int flag,
int argc, char * const argv[])
{
int i, j;
...
cmd_tbl_t *cmd_array[cmd_items];
/* Make array of commands from .uboot_cmd section, filtering only
* allowed */
for (cmdtp = cmd_start, i = 0, j = 0; i < cmd_items; cmdtp++, i++)
if (cmd_allowed(cmdtp->name))
cmd_array[j++] = cmdtp;
```
@hirthwork какая нахуй разница? там с -O0 одинаковый выхлоп.
void func_post(void) {
int i;
for (i = 0; i < 10; i++) {
printf ("%d\n", i);
}
return;
}
void func_pre(void) {
int i;
for (i = 0; i < 10; i++) {
printf ("%d\n", i);
}
return;
}
@hirthwork 1. Нет, вроде.
2. Не пропустил. Если оптимизированный и не оптимизированный варианты занимают одинаковое место и при этом после оптимизации компилятором выдают одинаковый код, то *не* оптимизированный исходник лучше, т.к. обычно оптимизации уменьшают читабельность.
3. Нет, одинаково. А мы разве об этом спорим?
Прослушал два семестра по Си и Си++, прочитал первую часть какой-то из книг Шилдта (эта часть была про Си), кручусь в программистских кругах, и при этом впервые слышу об операции «запятая». Спасибо.
век живи век учись // запятая еще - sequence point, это важно
@minoru забей, в хескеле это ненужно
ломающие новости
автор статьи мог бы просто написать что он сосёт хуи и страдает синдромом дауна
@minoru генери питон из хаскеля (можешь генерить из-под линукса)
алсо, оператор запятая — единственный бинарный оператор в плюсцах, аргументом которого может быть void: https://rsdn.ru/forum/cpp/1301668.flat#1301668
@minoru ломающие новости про то что в си есть оператор запятая. а вот описанные ошибки недостойны примата
@hirthwork того который шимпанзе, а не прикладной математик
@hirthwork сдается мне что компилер будет одинаковый код генерить в данном случаеп
@lexszero алсо, охуенный пример цикла, который не делает нихуя полезного, ибо время жизни всех изменяемых переменных ограничено циклом
@minoru это не студенты, это амёбы
@lexszero правилом хорошего тона считается писать префиксные, а не постфиксные инкременты там где разницы нет
@hirthwork интересно, через сколько минут тебя пошлет человек, собеседуемый по C++ ?
@lexszero в том-то и дело, что в реальном коде у тебя бы получилось менее мозголомное:
и этот код куда проще в прочтении, хотя и не увеличивает длину члена автора
@minoru сасай, лалка
@4da да, будет. а если говно с ботинок не очищать, то оно всё равно само отвалится. и что? почему все продолжают чистить ботинки?
@hirthwork кароч, если два варианта написания кода занимают одно и то же место на экране, то приятнее читать тот код, оптимизировать который компилятору придётся меньше
@minoru сорь, но чтобы превратиться в Комара, нужно сначала обладать его уровнем экспертизы
@minoru нет, так что мимо, дедушка Фрейд
@minoru 1. ты долбоёб?
2. ты пропустил «занимают одно и то же место на экране»
3. тебе сложнее прочитать
++p
чемp++
?@hirthwork какая нахуй разница?
там с -O0 одинаковый выхлоп.
@minoru да никакую работу ты не делаешь если напишешьвместо
++i;
вместоi++;
эти выражения имеют одинаковую операционную семантику.@lexszero я доебался не до запятых, а до точки с запятой в той же строке что и
for
@lexszero лан