c和指针1~2章小结

第一章:快速上手

         本章主要通过对一个程序的讲解、分析来引导读者进入c和指针的世界,通过对这个程序的分析,来介绍这本书介绍的整体内容,思路,让读者实现带着问题去读书。

         知识笔记:

          1、程序主要实现按指定的列对其进行打印、输出的功能。

          2、程序进行编译前需要先对其进行预处理(通过预处理器),如

              (1)#include 实现调用函数库的调用,此语句的作用相当于将库函数头文件的内容替换到#include所在位置,#include有"<>","  " "  "两种形式,<>指进行库函数查询,从            库函数查起,再到当前目录查询;“ ”表示从当前目录查询,再到库查询。

              (2)#define将一个名字(一般为大写)定义为字面型常量,预处理时会将程序中所有此名字替换为字面型常量。

              (3)注释将被做删除操作。

         3、函数传参所有传递给函数的参数都是按值传递的,但要区别开来,标量与常量是按值传递的(变量或常量值),形参的改变并不影响实参,指针是按地址传递的(地址的值),形参影响实参。数组是以引用方式进行传递的,传递的是数组首元素的地址,所以也为地址传递。

         4、数组进行参数传递时,形参可以不写数组的长度,及可以为a[]形式,它可以接受任何长度的数组,如要限定长度,需另行传参。

         5、c中对数组的下标没有严格的检查,所以需程序员自己检查。(数组长度问题)。

         6、c中const关键字,将变量声明为常变量,不允许直接修改其值,但可以通过间接访问(指针操作)修改,一般用于函数传参,防止一些不希望被修改的值被修改,迫使编译器进行检查。

         7、scanf、prinf:格式化输入输出函数,一般成对出现。

                (1)scanf接收几个参数,格式化字符串、剩下的都是变量,作用是将变量转换为格式化字符串,其函数的返回值为函数成功转换并存储于参数中的个数。scanf中变量前必有&(数组名前可有可无)。注意%s格式不能有空格出现,因为空格表示结束。

                (2)printf接收多个参数,第一个为格式化字符串,剩下的都是打印的值,其函数的返回值为打印在屏幕中字符的个数。

                (3)基本格式:《c和指针》p8、p9.

         8、gets、puts:一般读取,输出一串字符,以换行符结尾

                (1)gets函数读取时会丢弃换行符,以一个NUL结尾(此物不存在,要用需定义)(类似‘\0’,字节模式全0),成功读取返回非NULL,否则返回NULL;(数组长度问题)。

                (2)puts对应gets的输出函数将指定的字符串输出并加以换行符。

         9、getchar、putchar:得到、输出一个整型变量(字符型即为小整型变量)返回得到的值。

         10、文件末尾标志EOF为一个整型值。

         11、关于部分字符串函数的使用:头文件 string.h

              strncpy函数,字符串复制,接受3个参数,第一个目标参数,第二个源参数,第三个,复制长度(较严谨)。

              strcpy函数,一种不带限制字符数量的字符串复制函数。(第一个参数不能为字符串常量)

              strcat函数,将第二个字符串加到第一个的末尾。(第一个参数不能为字符串常量)

              strchr函数,第一个参数为字符串,第二个为要查找的字符,没有返回NULL指针。

         12、操作符、空语句的使用(=与==)(;)

         13、注释的合理使用,注释可以添加在任何空格可以出现的地方。

         14、代码的删除可以使用如下语句:

                     #if     0

                      {

                          代码块

                     }

                     #endif

          15、函数返回值类型int、void等

...........

第二章    基本概念

           本章主要对程序的编译链接生成可执行的程序的过程进行阐述,并对c的语法规则,书写规范进行讲解。

知识笔记:

          1、一个源程序一般要经过预处理、编译、链接,最后生成可执行文件。

          2、文件名:

            (1) 对源文件、头文件来说,大多环境都为.c   .h。

            (2)目标文件UNIX系统为.o,MS-DOS(微软磁盘系统)为.obj。

          3、在程序执行时,将使用一个运行时堆栈进行函数局部变量及返回地址的存储。(完成任务时释放),静态内存整个程序执行过程中不释放,保留。

          4、C中字符并未特定,但所有大小写字母,0-9数字及P22页所示字符必有。

          5、三字母词的使用(不常用)为了实现字符集上没有的字符而存在。P22

          6、转义字符(\)的使用\"字符串中输出“,在字符串中表示一个字符,\?、\‘、\\等。

          7、标识符指变量、函数、类型等的名字,其以字母、下划线、数字组成。注意不能以数字开头,以便于十六进制等做区分,c中预留的关键字不能用作标识符,详见P24。

          8、注意注释的书写形式,以免程序出错。

............


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值