当前位置:初级程序员题库>C语言程序设计题库

问题:

[问答题,案例分析题]

下面是用C语言书写的函数get_str的两种定义方式以及两种调用方式。

问题:若分别采用函数定义方式1、2和调用方式1、2,请分析程序的运行情况,填充下面的空(1)~(3)。若采用定义方式1和调用方式1,则输出为"00000000"。若采用定义方式1和调用方式2,则__(1)__。若采用定义方式2和调用方式1,则__(2)__。若采用定义方式2和调用方式2,则__(3)__。

中国戏曲表演讲究功法,所谓“四功”是() ["唱","念","做","打","说"] 建筑机械的安全检查形式很多,其中定期检查就包括()等。 ["施工企业季度检查","国家法定节假日检查","分支机构(分公司)月度检查","项目部每周一次的检查","巡回检查"] “丑”扮演女性角色时称() ["彩旦","丑旦","摇旦","花旦","丑婆子"] 落实建筑机械安全责任制,首先要组织落实,应做到()。 ["施工企业应建立设备综合管理体系","施工企业设置了设备管理部门或人员、施工项目部就可以不配备设备管理员负责机械设备的管理工作","施工企业与项目部应形成相互联系的机械安全管理网络","各项机械管理的安全要求和责任要落实到各项制度规定中,落实到每个人的身上","企业安全管理部门只要管施工生产的安全,不要管机械的安全"] 下列瓷系中,属于我国宋代六大瓷系的有() ["汝窑系","德化窑系","耀州窑系","磁州窑系","石湾窑系"]

下面是用C语言书写的函数get_str的两种定义方式以及两种调用方式。

问题:若分别采用函数定义方式1、2和调用方式1、2,请分析程序的运行情况,填充下面的空(1)~(3)。若采用定义方式1和调用方式1,则输出为"00000000"。若采用定义方式1和调用方式2,则__(1)__。若采用定义方式2和调用方式1,则__(2)__。若采用定义方式2和调用方式2,则__(3)__。

参考答案:

  参考解析

考查的是指针变量的定义。定义方式1中p是一个指向字符型变量的指针。从而定义方式1中给p赋值一个新创建的字符串,同时将"testing"复制给该字符串。即p指向"testing"字符串。而在定义方式2中,p是一个指向字符型变量指针的指针,即p指向一个指针而该指针又指向一个字符型变量。*p这个指针所指内容与定义方式1中p指针所指内容一致,而p这个指针指向*p这个指针。而在调用过程中,get_str(ptr)传递的是指针,get_str(&ptr)传递的是指针的地址。因此,只能用定义方式1调用调用方式1,定义方式2调用调用方式2,否则,由于调用参数类型不匹配,出现错误。当采用定义方式2和调用方式2时,参数传递ptr指针的地址。指向ptr指针的指针所指内容中复制testing字符串,即ptr指针单元中放的是testing,当测试ptr时为空,执行else语句。输出ptr指针单元中存放的内容testing。

在线 客服