慕课网首页
免费课
实战课
体系课
成长课
发现
教程
专栏
手记
商业合作
企业服务
讲师入驻
热搜
最近搜索
清空
0
登录
/
注册
新人专属
元礼包
| 查看
为了账号安全,请及时绑定邮箱和手机
立即绑定
onemoo
保密
其它
更多信息
这位同学很懒,木有签名的说~
15h
学习时长
13782
经验
722
积分
56
关注
127
粉丝
+
关注
已关注
私信
他的课程
猿问
手记
Ta的提问
Ta的回答
Ta的关注
来自
C
163. 对枚举类型进行定义,不正确的是( )。求大神解析,谢谢
Ta的回答
A 错枚举类型列表中的都是标识符。还记得标识符的命名要求吗? 不能以数字开头
2018-08-15
1个回复
来自
C
求查错,为什么运行失败?
Ta的回答
编译器给出的报错信息还有别的字吧。 仔细看看,其实人家已经告诉你错在哪里了
2018-08-15
0个回复
来自
C
我知道B是对的,但是CD不太懂哪里错了,想问一下C,D错在哪里,求会的大神帮忙解析一下,谢谢
Ta的回答
C:数组对象是不可修改左值,不能搭配自增自减运算符。D:这样构造的 str 只能算是“字符数组”,不算是合法的字符串,因为结尾没有 '\0' 字符。C 语言的字符串是以 '\0' 字符结尾的字符序列,所有处理字符串的函数都以此为前提。如果你传入的是没有 '\0' 结尾的字符数组,函数的行为将不正确。
2018-08-14
1个回复
来自
C++
关于提升转换与标准转换的C++问题
Ta的回答
这个题目出得有些模糊。因为抠字眼的话,所谓“提升转换”就属于“标准转换”。内置类型间的转换都是“标准转换”。
2018-08-14
0个回复
来自
C++
关于变量赋值的问题。
Ta的回答
我大概知道你想问的了,就再多说些吧。首先我还是想说:你说是 UCHRT_... 是不是笔误了? UCHRT_MAX 可是 unsigned char 的最大值啊...因为你提到了 65535,所以你是不是想说 USHRT_MAX? 这才是 unsigned short 的最大值,通常是 65535。我假设你想问的是这个。short sam = USHRT_MAX; 实际上就是 short ...
[查看全部]
2018-08-14
0个回复
来自
C
115. 若有如下函数定义:
Ta的回答
printf 打印的是什么? 是 fun() 的值! 这是什么意思?这里的 fun() 就是个表达式,这是“函数调用表达式”。还记得吧,每个表达式都有值,“调用表达式”的值就是函数的返回值。当然,fun 函数需要被调用运行才会得到返回值,所以 printf("%d",fun()); 这一语句执行期间,fun 函数确实被调用了,它返回的值被 printf 打印了出来。我们来看看 fun 函数中到底...
[查看全部]
2018-08-13
1个回复
来自
C
c语言中unsigned char的意义何在
Ta的回答
2018-08-12
0个回复
来自
C
147. 设有如下定义语句:
Ta的回答
在前面 146 题那里,我对你的理解进行了下“修正”,再次强调了对齐值的存在。double 占 8 字节,所以 union 占 8 字节没错。而 union 的对齐值是 int、double、float 这三个类型的对齐值中最大的一个。 我们是假定 double 的对齐值是 8,才得出 union 的对齐值是 8 这个结论的。对此,我一直强调题目不严谨,没有给出类型的对齐值。 事实上,就我明确知...
[查看全部]
2018-08-12
1个回复
来自
C
146. 设有以下定义语句:
Ta的回答
每种类型都有一个叫做“对齐值”的属性。这个属性相当于描述“在内存中其能够分配的起始地址和前一一个此类型能够分配的起始地址的间距”。啊,好吧,我的文字表达能力比较差,上述说法我自己看着都觉得累,其实通俗地说就是限制了“能在内存中哪些位置放这个类型的对象”。我还是举些例子吧,我们在假想的一小段内存中进行描述,这段内存的起始地址被当作 0 地址:假定 int 类型本身占 4 字节,对齐值也是 4。那么如...
[查看全部]
2018-08-12
8个回复
来自
C
C++
C#
为什么有的地方可以不用 %s\n 这部分,有的地方又必须要呢?
Ta的回答
关于 printf 的用法, 请参考我之前的回答 https://www.imooc.com/wenda/detail/334835另外, 你图片中的代码也不正确。
2018-08-09
0个回复
来自
C
72. 以下程序的运行结果是( )。麻烦会的大神详细解析下,谢谢
Ta的回答
我假定你已经看过了我对“表达式有值”的讲解。那么在理解了这点之后,我们来看下这个代码的执行。n 的初值为 5在 if 语句的条件判断部分里,判断的是“n++ 表达式”和 6 的关系。还记得吧,“n++ 表达式”的值就是 n 自增前的值,也就是 5。那么 5 不大于等于 6,所以条件为否,执行流程进入 else 中。注意,if 的条件判断结束时也是序列点,所以能够确定在进入分支时,n 肯定自增为 6...
[查看全部]
2018-08-09
0个回复
来自
C
55. 已知double a=5.2; 则正确的赋值表达式是( )。
Ta的回答
2018-08-08
0个回复
来自
C
99. 若有定义int a[][3]={1,2,3,4,5,6,7,8,9};则表达式sizeof(a)/sizeof(a[0]) 的值为( )。
Ta的回答
为什么你要反复提出相同的问题??我和其他人都在之前的问题中回答过了吧。应该选 A
2018-08-07
2个回复
来自
C
99. 若有定义int a[][3]={1,2,3,4,5,6,7,8,9};则表达式sizeof(a)/sizeof(a[0]) 的值为( )。
Ta的回答
如前面回答,sizeof a / sizeof a[0] 的结果就是 3。
2018-08-07
0个回复
来自
C
95. 若有定义:int a[3][3];则表达式&a[2][1]-a的值为( )。
Ta的回答
我能理解这道题想考什么,但这题目出得十分不严谨。因为:&a[2][1]-a 是一个不合法的表达式!减号左侧是 int * 类型,而运算符右侧是 int (*)[2] 类型,两侧类型不符且无法隐式转型,所以表达式不合法。 应该说这个代码都无法编译。这道题目毫无价值,别告诉我这就是 C 二级的题库啊...
2018-08-05
4个回复
来自
C
C++
比较两个字符串的大小,请问差值会不会累计?
Ta的回答
2018-08-02
0个回复
来自
C
151. 以下程序的运行结果是( )。
Ta的回答
数组中每个元素的大小都是一样的。整个数组的占用内存的大小就是“单个元素的大小”乘以“数组的元素个数”。你这里,数组的元素是个union,而union占用内存的大小是其中最大成员占用的大小。这样得到union的大小,因为union就是数组元素,那么再乘以元素个数,就得到整个数组占用的大小。所以不是“数组里有几个元素就把所占内存最长的那个成员乘以元素数吗”,你这样是把两个知识点混在一起了...
[查看全部]
2018-08-02
4个回复
来自
C
98. 以下数组定义中,正确的是( )
Ta的回答
我记得你问过这个问题了:https://www.imooc.com/wenda/detail/398787
2018-07-31
0个回复
来自
C
C++
C++问题这个算出来是多少
Ta的回答
sqrt 是计算平方根,不是平方,所以 sqrt(4) 的结果是 2。strlen 是计算参数字符串的长度的(也就是有多少个字符),这里的参数是只有一个 Y 字符的字符串,所以结果是 1。cout 把这两个结果输出为 21。
2018-07-31
0个回复
来自
C
114. 以下程序运行后屏幕输出为( )。
Ta的回答
啊,看了你的描述,我知道你疑惑的点了。你没搞清楚一个关键知识点(我在给你的另一个回答链接中有提到),那就是“表达式本身是有值”的!我用下面的代码片段举例子:void f(int i) { int a = 2; a = i++;第 4 行的 a = i++ 这个赋值是把谁的值赋给 a? 答案是:是把“i++ 表达式”的值赋给 a。注意“i++ 表达式”和“变量 i”是两个东西。它们...
[查看全部]
2018-08-09
1个回复
首页
上一页
3
4
5
6
7
8
9
下一页
尾页
意见反馈
分销返利
帮助中心
APP下载
官方微信
返回顶部