你必须知道的495个C语言问题

副标题:无

作   者:[美]史蒂夫 萨米特(Steve Summit)

分类号:

ISBN:9787115376763

微信扫一扫,移动浏览光盘

简介

本书以问答的形式组织内容,讨论了学习或使用C语言的过程中经常遇到的一些问题。书中列出了C用户经常问的400多个经典问题,涵盖了初始化、数组、指针、字符串、内存分配、库函数、C预处理器等各个方面的主题,并分别给出了解答,而且结合代码示例阐明要点。本书结构清晰,讲解透彻,是各高校相关专业C语言课程很好的教学参考书,也是各层次C程序员的实践指南。

目录

第1章 声明和初始化 1



基本类型 1

1.1 我该如何决定使用哪种整数类型? 1 

1.2 为什么不精确定义标准类型的大小? 2

1.3 因为C语言没有精确定义类型的大小,所以我一般都用typedef定义int16和int32。然后根据实际的机器环境把它们定义为int、short、long等类型。这样看来,所有的问题都解决了,是吗? 2 

1.4 新的64位机上的64位类型是什么样的? 3



指针声明 3

1.5 这样的声明有什么问题?char *p1, p2; 我在使用p2的时候报错了。 3

1.6 我想声明一个指针,并为它分配一些空间,但却不行。这样的代码有什么问题?char *p; *p=malloc(10); 4



声明风格 4

1.7 怎样声明和定义全局变量和函数最好? 4

1.8 如何在C中实现不透明(抽象)数据类型? 5

1.9 如何生成“半全局变量”,就是那种只能被部分源文件中的部分函数访问的变量? 5



存储类型 6

1.10 同一个静态(static)函数或变量的所有声明都必须包含static存储类型吗? 6

1.11 extern在函数声明中是什么意思? 6

1.12 关键字auto到底有什么用途? 7



类型定义(typedef) 7

1.13 对于用户定义类型,typedef 和#define有什么区别? 7

1.14 我似乎不能成功定义一个链表。我试过typedef struct{char *item; NODEPTR next;}* NODEPTR; 但是编译器报了错误信息。难道在C语言中结构不能包含指向自己的指针吗? 7 

1.15 如何定义一对相互引用的结构? 9

1.16 Struct{ } x1;和typedef struct{ } x2; 这两个声明有什么区别? 10

1.17 “typedef int(*funcptr)();”是什么意思? 10



const 限定词 10

1.18 我有这样一组声明:typedef char *charp; const charp p; 为什么是p而不是它指向的字符为const? 10

1.19 为什么不能像下面这样在初始式和数组维度值中使用const值?const int n=5; int a[n]; 10

1.20 

已确认勘误

次印刷

页码 勘误内容 提交人 修订印次

你必须知道的495个C语言问题
    • 名称
    • 类型
    • 大小

    光盘服务联系方式: 020-38250260    客服QQ:4006604884

    意见反馈

    14:15

    关闭

    云图客服:

    尊敬的用户,您好!您有任何提议或者建议都可以在此提出来,我们会谦虚地接受任何意见。

    或者您是想咨询:

    用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问

    Video Player
    ×
    Audio Player
    ×
    pdf Player
    ×
    Current View

    看过该图书的还喜欢

    some pictures

    解忧杂货店

    东野圭吾 (作者), 李盈春 (译者)

    loading icon