私はprint文を印刷非常に奇妙な配列の宣言の問題 - C
int main(int argc, char** argv) {
int numPassedIn = atoi(argv[1]);
printf("%d", numPassedIn);
pid_t kidPID[numPassedIn];
"FUNCNAME 4" を使用してこの関数を呼び出す "4"。意味をなさない
ただし、配列kidPIDは正しく初期化されていません(宣言されていますか?)。 pid_tを格納するためのスペースはありません。私は
int main(int argc, char** argv) {
int numPassedIn = atoi(argv[1]);
printf("%d", numPassedIn);
pid_t kidPID[4];
を読むためにコードを変更した場合
それはスペースを提供します。何が起きてる?前もって感謝します!
は、なぜあなたは 'kidPID'が適切に割り当てられていないことだと思います宣言に相当しているのですか?静的または動的サイズの場合、配列は同じプロパティを持ちます。 2番目のバージョンでは持っていない最初のバージョンで何が問題になっていますか? (引数を渡さない限り!) –
可変長配列はオプションの実装なので、コンパイラによってサポートされていない可能性があります。 –
正しく割り当てられていないことをどのように知っていますか? – immibis