Size: a a a

2020 November 01

AG

Anton Glukhov in pro.cxx
Привет! А кто-нибудь знает работает ли флаг -E в godbolt? Хочу развернуть макрос
источник

O

Ofee in pro.cxx
Anton Glukhov
Привет! А кто-нибудь знает работает ли флаг -E в godbolt? Хочу развернуть макрос
источник

AG

Anton Glukhov in pro.cxx
#define CONCAT(x,y) x ## y
main() {
   int con = CONCAT(2,3);
   printf("res: %d\n", con);
}
источник

AG

Anton Glukhov in pro.cxx
Вот такой пример же должен развернуть и показать con = 23; Ошибка выыпадает: [F][2020-10-31T23:15:55+0000][1] bool subproc::runChild(nsjconf_t*, int, int, int)():449 Launching child process failed
источник

O

Ofee in pro.cxx
Anton Glukhov
#define CONCAT(x,y) x ## y
main() {
   int con = CONCAT(2,3);
   printf("res: %d\n", con);
}
Насколько я вижу, так и происходит, вероятно, для ответа на вопрос нужно либо больше контекста, либо и вовсе искать ошибку в другом месте
источник

AG

Anton Glukhov in pro.cxx
хмм. работает как-то через раз. странно
источник

VS

Vlad Serebrennikov in pro.cxx
Anton Glukhov
Вот такой пример же должен развернуть и показать con = 23; Ошибка выыпадает: [F][2020-10-31T23:15:55+0000][1] bool subproc::runChild(nsjconf_t*, int, int, int)():449 Launching child process failed
просто вы смотрите в окно output (executor), а надо смотреть в окно, где обычно асм
источник

DY

Dan Y in pro.cxx
Подскажите кто-нибудь, как понять условие в if?

PqRecvPointer, PqRecvLength типа int

Язык Си 🙂

if (PqRecvPointer < PqRecvLength || (0) > 0)
{
*c = PqRecvBuffer[PqRecvPointer++];
return 1;
}
источник

DY

Dan Y in pro.cxx
меня смущает часть || (0) > 0
источник

D

Dmitriy in pro.cxx
Dan Y
Подскажите кто-нибудь, как понять условие в if?

PqRecvPointer, PqRecvLength типа int

Язык Си 🙂

if (PqRecvPointer < PqRecvLength || (0) > 0)
{
*c = PqRecvBuffer[PqRecvPointer++];
return 1;
}
Выглядит странно
источник

D

Dmitriy in pro.cxx
... || false
Любопытно
источник

DY

Dan Y in pro.cxx
clion предлагает упростить в if (PqRecvPointer < PqRecvLength != 0)
источник

DY

Dan Y in pro.cxx
забавно, когда для осознания условия в if нужно больше получаса)
источник

m

magras in pro.cxx
Dmitriy
... || false
Любопытно
А почему зачеркнуто? Мне тоже кажется что это ... || false.
источник

DY

Dan Y in pro.cxx
в таком случае, почему clion предлагает упростить в if (PqRecvPointer < PqRecvLength != 0) а не просто в if (PqRecvPointer < PqRecvLength)?
источник

D

Dmitriy in pro.cxx
Dan Y
в таком случае, почему clion предлагает упростить в if (PqRecvPointer < PqRecvLength != 0) а не просто в if (PqRecvPointer < PqRecvLength)?
А это не одно и то же?)
источник

DY

Dan Y in pro.cxx
я в Си не так давно, может быть там компараторы работают как-то необычно?)
источник

АК

Александр Караев... in pro.cxx
Dan Y
в таком случае, почему clion предлагает упростить в if (PqRecvPointer < PqRecvLength != 0) а не просто в if (PqRecvPointer < PqRecvLength)?
источник

D

Dmitriy in pro.cxx
Dan Y
я в Си не так давно, может быть там компараторы работают как-то необычно?)
Сомневаюсь, что изменён приоритет операций
источник

K

Konstantin in pro.cxx
Dan Y
в таком случае, почему clion предлагает упростить в if (PqRecvPointer < PqRecvLength != 0) а не просто в if (PqRecvPointer < PqRecvLength)?
Сравнение с нулем быстрее происходит
источник