C语言中的使用内存的三段

1.正文段即代码和赋值数据段

一般存放二进制代码和常量

2.数据堆段

动态分配的存储区在数据堆段

3.数据栈段

临时使用的变量在数据栈段

 

典例

若一个进程实体由PCB、共享正文段、数据堆段和数据栈段组成,请指出下列C语言程序中的内容及相关数据结构各位于哪一段中。

①全局赋值变量(  )  ②未赋值的局部变量(  )

③函数调用 实参传递值(  )   ④用malloc()要求动态开辟内存空间(  )

⑤常量值(例如 1997, “string”)(  )  ⑥进程的优先级

A.PCB  B.正文段  C.堆段  D.栈段

 

 

 

 

 

 

 

 

 

答案:B D D C B A

解析:全局赋值变量在正文段赋值数据段, 未赋值的局部变量和实参传递在栈段,动态分配内存在堆段,常量在正文段,进程的优先级和进程的状态信息在PCB内(Process Control Block)

 

posted @ 2019-04-11 13:55  C_hp  阅读(1446)  评论(0编辑  收藏  举报