makecontext создает пустое значение? - PullRequest
0 голосов
/ 23 февраля 2019

Моя проблема касается этой строки:

    int f = makecontext( &threadList[ numThreads ].context

Моя программа компилируется без ошибок без операции присваивания, но не работает вообще.Строка, кажется, ничего не делает.Когда я добавляю «int f =», компилятор выдает мне ошибку:

my_pthread.c:41:10: error: void value not ignored as it ought to be

Я не понимаю, как это происходит, поскольку ucontext всегда должен возвращать 0 или -1.

Любая помощь приветствуется.

1 Ответ

0 голосов
/ 23 февраля 2019

Функция makecontext объявлена ​​как:

void makecontext(ucontext_t *ucp, void (*func)(), int argc, ...);

Она не возвращает значения, поэтому вы не можете присвоить результат функции чему-либо.

...