C语言深度解剖读书笔记 .pdf

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

C语言深度解剖读书笔记之——C语言基础测试题

前几天天看到这本书,感觉不错,在看之前,先做了后面的习题,结果只得了60多分,一

直以为自己的基础还是不错的,做完后对了答案后,感觉自己的自信心一下全没有了,不过

遇到问题解决问题,我用了2天时间好好研读了这本书,感觉真不错。虽然感觉都是一些基

础的知识,但是我读的还是津津有味,感觉收获蛮多的,感谢这本书的作者陈正冲。呵呵,

说来我本科专业和这位大牛还是同一个专业呢,呵呵。不是只有计算机科班出身的才能学好

编程,知真正的高手都是自学的。

今天就把我当时做错的题目和认为比较好的题目一个个写出来。再次分析下

如果我在哪家公司遇到类似这种题目我会感觉这家公司出题很有水平,重基础,真正理解C

语言的人才能得高分。注重细节,知其然知其所以然。

题目1.

下面代码有什么问题,为什么?

[cpp]viewplaincopyprint?

1.#includeiostream

2.usingnamespacestd;

3.

4.int_tmain(intargc,_TCHAR*argv[])

5.{

6.charstring[10],str1[10];

7.inti;

8.for(i=0;i10;i++)

9.{

10.str1[i]=a;

11.}

12.strcpy(string,str1);

13.coutstringendl;

14.system(pause);

15.return0;

16.}

#includeiostream

usingnamespacestd;

int_tmain(intargc,_TCHAR*ar

{

charstring[10],str1[10];

运行的时候回出现下面情况:

error1.exe中的0xcccc6161处未处理的异常:0xC0000005:Accessviolation

做这个题目的时候,我也知道字符串strcpy是以\0为结束标识的。会产生数组越界,但是

表达不清楚。

答案:运行到strcpy的时候可能会产生内存异常。

因为:str1没有结束符标识,str1数组后面继续存储的可能不是\0,而是乱码。Cout函数,

对于输出char*类型,顺序打印字符串中的字符直到遇到空字符(\0)或打印了由精度指定

的字符数为止。

题目2.

下面代码的结果是多少?为什么?

[cpp]viewplaincopyprint?

1.#includeiostream

2.usingnamespacestd;

3.

4.int_tmain(intargc,_TCHAR*argv[])

5.{

6.chara[1000];

7.inti;

8.for(i=0;i1000;i++)

9.{

10.a[i]=-1-i;

11.}

12.coutstrlen(a)endl;

13.system(pause);

14.return0;

15.}

#includeiostream

usingnamespacestd;

int_tmain(intargc,_TCHAR*ar

{

chara[1000];

做题目的时候没有考虑到字符溢出,自然做错了

分析:

我们知道计算机底层只认识0,1,所以任何数据到了底层都会通过计算转换成0,1,那么负

数是怎样存储呢?由于“-”无法存入内存,我们把它做个标记,把基本数据类型的最高位

腾出来,用来存符号,同时约定如下:如果最高位是1,表明这个数是负数,其值为除最高

位以外的剩余位的值添上这个“-”号。

一个32位的signedint类型整数,其值表示的范围为:-;8位的char,其值表示的范围为。

一个32位的unsignedint

文档评论(0)

. + 关注
官方认证
内容提供者

专注于职业教育考试,学历提升。

版权声明书
用户编号:8032132030000054
认证主体社旗县清显文具店
IP属地河南
统一社会信用代码/组织机构代码
92411327MA45REK87Q

1亿VIP精品文档

相关文档