C及指针读书笔记.docxVIP

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
快速上手:1-gets(char *)从标准输入得到一行文本并把它存储于参数数组中。(一行文本表示以换行结尾)。2-注释不能嵌套。3-注释掉一段代码的方法:如果使用/* */来注释会出现问题,如果该段代码里面也存在/* */就会出现注释嵌套的问题,使用 # if 0 # endif来注释一段代码。4-预处理指令:一行代码前面带#称为预处理指令。由预处理器解释修改,修改之后交给编译器。#includestdio.h stdio.h头文件的内容会替换#includestdio.h。5-const: (char const arry[])|| (char const *arry) const限定会导致arry数组里面的值不会被引用函数修改。const是用来申明常量的,对于它的赋值有两种,第一在申明的时候初始化,第二是在使用该常量形参的是函数被调用的时候。Int const *pi; //指针pi指向的整型值不可以修改,但是指针pi可以修改。Int * const pi; //指针pi指向的整型值可以修改,但是指针pi不可以修改。Int const * const pi; //指针pi指向的整型值和指针pi都不可以修改。5-static: 关键字,static对应于不同的上下文有不同的意思,如果static是在函数名称或者代码块之外的标识符(变量)前面的时候,表示的是更改对应变量(函数)链接属性,外部内部。如果static是在代码块内的标识符声明之前,则是更改存储类型,自动存储静态存储6-把函数原型包含在头文件中,然后使用include引用,可以省去在每个引用该函数的代码中声明函数的原型的麻烦。7-标量、常量、引用:在C中数组是以引用的形式传递的(也就是地址调用),而标量和常量是以值的形式被调用。标量和常量参数的修改会在函数的返回的时候丢失,但是如果被调用函数修改的是数组参数中的一个元素的时候,调用函数里面的该数组的值会被修改。8-while:首先检查while里面表达式的值,如果是0则跳过,如果是非0就执行循环体,然后在重新测试表达式的值。9-字符串:字符串是一串以NUL||(’\0’)结尾的字符.NUL是字符串的终止符,但它本身并不是字符串的一部分。字符串常量”Hello”,在内存中占6字节,H e l l o 和NUL.10-字符数组:11-NUL和 NULL:NUL是ASCII里面的’\0’字节模式是全0;NULL指一个其值为0的指针。但是它们的值是相同的,都是0,可以互换使用。12-scanf:使用%s输入字符串的之后中间不能包含空白13-puts是gets函数的输出版,把指定的字符串写到标准输出,并在末尾天上换行符。14-getcharputchar都读取或者输出一个字符。15-strchr,在字符串内进行搜索,第一个参数是字符串,第二个参数是一个字符,搜索这个字符在字符串内第一次出现的位置,并返回这个位置的指针。16-strstr,和strchr功能类似,但是第二个参数也是一个字符串,搜索第二个字符串在第一个字符串中第一次出现的位置,并返回其指针。基本概念:17-环境:翻译环境:源代码转换为可执行的机器指令执行环境:它用于执行的实际代码。18-翻译:一个程序的多个代码通过编译过程分别转换为目标代码(object code),之后各个目标文件通过链接器捆绑在一起,形成一个单一完整的可执行文件。编译过程:首先预处理器处理,预处理将#define和#include用实际值代替;之后是解析过程,判断语句意思(这里给出了绝大多数的错误和警告),随后产生目标代码;12-编译和链接:UNIX中的C编译器名为cc, 单个:cc program.c 中间生成了一个program.o目标文件之后会被删除多个:cc main.c sort.c lookup.c 当原文件超过一个的时候,目标文件不会被删除编译一个C文件,并把它和现存的目标文件链接在一起:cc main.o sort.o lookup.c编译单个C源文件,产生目标文件不删除,以后进行链接:cc -c program.c编译几个C源文件,并为每个文件产生目标文件:cc –c main.c sort.c lookup.c链接几个目标文件 cc main.o sort.o lookup.o加上- o name选项,可以使链接器把执行文件保存在name文件中,而不是a.out中。13-执行:首先程序载入内存中14-堆栈:用于存储函数的局部变量和返回地址15-静态内存:存储于静态内存中的变量在程序执行过程中一直保留他们的值。16-一个C程序可能保存于一个或多个源文件中。虽然一个源文件可以包含超过一个函数,但是每个函数都必须完整的出现于同一个源文件中。

文档评论(0)

0520 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档