我有一個結構數組,我打算將數組的每個元素傳遞給for循環中的單獨pthread。難以通過pthread_create傳遞結構
這裏是我的結構:
struct arrayData{
int *a;
int *b;
int up, low;
}
這裏是指向第一個結構和一個malloc(說不上來,如果我完全得到什麼放在這裏):
struct arrayData * instance;
instance = malloc(sizeof(struct arrayData)*n);
這裏的我致電pthread_create:
pthread_create(&thread[i], NULL, add, (void *)instance[i]);
而對於該行,我收到消息「無法轉換爲指針類型」。
該行有什麼問題?
非常好!謝謝。因爲我太生鏽了,所以今年夏天需要打C版的書。爲什麼我仍然得到一條警告,說「從不兼容的指針類型傳遞'pthread-create'的參數3」。 – Chucky 2012-03-28 19:11:51
你的'add'函數的簽名是什麼? – 2012-03-28 19:14:52
「void * add(void * arg){」 – Chucky 2012-03-29 07:32:45