【发布时间】:2011-11-12 22:53:46
【问题描述】:
编辑:
Typedef struct SPro{
int arrivalTime;
char processName[15];
int burst;
} PRO;
我有一个 PRO 类型的数组
PRO Array[100];
PRO enteringProcess;
//initialize entering process
然后我需要创建一个新进程并使用 malloc 为该进程分配内存然后将数组中的指针指向 malloc 返回的内存块。
PRO *newPro = (PRO *) malloc (sizeof(PRO));
newPro = enteringProcess;
ProArray[0] = *newPro;
似乎我做错了什么,因为我的程序在运行时崩溃了。 有什么帮助吗?谢谢!
【问题讨论】:
-
程序在哪里崩溃?在上面的代码中? PRO是如何定义的?对不起,但对我来说,上面的 sn-ps 包含的信息太少了。
-
entertingProcess 是如何声明的?也是指针吗?
-
即使在编辑之后我也很迷茫和困惑 :) 该睡觉了...
-
我想多看看你的代码会很有用,或者至少知道你认为程序在哪里崩溃。但据我所见,“newPro = enterProcess;”已经有问题了陈述。这个“enteringProcess”变量是什么?因为在下一个语句中,您要取消引用“newPro”,它实际上是“enteringProcess”。此外,“ProArray”是“PRO”数组而不是“PRO*”数组,这似乎是您真正想要的。同样,欢迎提供更多详细信息。
-
最好发布实际编译的代码,而不是 Q 中错误复制的代码。请为此使用剪贴板。