我敢肯定有這樣的問題,但我不能找到它:\總之,這裏的問題:差/等待
是什麼在stdlib.h
wait
之間的區別和sys/wait.h
oO?
在詳細信息 - 我剛遇到這個問題,我不能編譯一個簡單的C程序。我孤立的問題,這裏就是我的了:
#include <stdlib.h>
//#include <sys/wait.h>
int main()
{
int status;
wait(&status);
return 0;
}
如果stdlib.h
包括,我得到:
$ gcc asd.cpp
asd.cpp: In function ‘int main()’:
asd.cpp:9:16: error: conflicting declaration ‘wait& status’
asd.cpp:8:6: error: ‘status’ has a previous declaration as ‘int status’
什麼聲明? O.o這裏的wait
是什麼,與int status
衝突?
我在網上發現了一個線程,在那裏用sys/wait.h
代替stdlib.h
解決了這個問題,但是爲什麼會這樣呢,又有什麼區別呢?
編輯:感謝sidyll的評論,我改變了文件擴展 - 從.cpp
到.c
和它的工作!我很震驚:)這是如此不同?還有同樣的問題 - 這兩個wait
-s之間有什麼不同?
gcc for .cpp文件? – sidyll
@sidyll:你可以使用gcc很好地編譯一個.cpp文件。使用gcc和g ++的唯一區別是,如果你正在進行鏈接,那麼g ++將鏈接到C++標準庫(libstdC++),但gcc不會。 –
OMG !!!!!!!!! Pfffffff ..那是因爲我直接編輯了一箇舊的C++文件.. WTF o.O這怎麼重要? –