C语言编程基础

目录

第一章:C语言编程基础

C语言国际标准定义

C语言标准库

C程序的创建过程


C语言国际标准定义

        最新版本有ISO/IEC9899:2011文档定义,一般称为C11

C语言标准库

        标准库在一系列标准文件----头文件中指定,头文件的扩展名总是.h,为了使一组标准功能可用于C程序文件,只需要将对应的标准头文件包含进来。

C程序的创建过程

1、包含4个步骤:编辑-->编译-->链接-->执行

2、编译:编译可以将源代码转换成机器语言,在编译的过程中,会找出并报告错误,这个阶段的输入是在编辑期间产生的文件,常称为源文件(*.c)

3、编译器的输出结果称为对象代码,存放他们的文件称为对象文件(object file),对象文件在Windows环境中通常是*.obj,而在Linux/UNIX环境中通常是*.o

4、在UNIX系统下刚走,编译C程序的标准命令是cc(若编译器是GNU's Not UNIX (GNU),则命令为.gcc)

cc -c mypro.c

5、 一个.c文件是怎么变成一个可执行文件,中间会产生那几种文件?

涉及到C语言几个相关的程序

  1. C语言预处理程序cpp,将C语言源码翻译成ASCII码文件*.i
  2. C语言编译器ccl,将*.i文件编译成汇编语言*.s
  3. 运行assemble汇编器,将汇编语言文件编译成的可重定位目标文件*.o
  4. 再通过动态链接器,将  ***** ,得到具体可执行文件
  5. 通过./程序名   执行,在执行的过程中动态链接库会把相关的代码和数据链接进去

计算机内存

6、计算机中的存储器

RAM:易失性存储器,关闭PC后 ,RAM的内容就丢失了

磁盘驱动器:永久存储器

7、普通变量和指针变量的区别

普通变量和指针变量这两者都是变量,既然是变量就会包含地址这两部分

普通变量和指针变量的区别,这两种变量的值的所表示的意义不同,普通变量的值,只是供程序员所使用的值,而指针变量的值则不同,它的值存放的是其他变量的地址

8、变量和内存

根据变量的类型,编译器会给他分配一块足够大内存来保存,分配内存的大小根据变量类型来决定

                                                                                                     >>整数变量类型名称

类型名称字节数
signed char1
short int2
int 4
long int4
long long int8

9、C语言的数据类型分类

其他数据类型

size_t 

unsigned int 类型,无符号,它的取值没有负数。用来表示 参数/数组元素个数,sizeof 返回值,或 str相关函数返回的 size 或 长度。sizeof 操作符的结果类型是size_t。

ssize_t

size of an object or –1,long类型,有符号

time_t

time of day in seconds,long 类型,有符号

off_t

文件偏移,long 类型,有符号

wchar_t : wide char type,“一种用来记录一个宽字符的数据类型”

  char c = 'a';//c保存了字符a,占一个字节

  wchar_t wc = L'a';//wc保存了宽字符a,占两个字节

ptrdiff_t: pointer difference type,“一种用来记录两个指针之间的距离的数据类型”

  int *p1 = &arr[0];//取得数组中元素的地址,赋值给指针

  int *p2 = &arr[3];

  ptrdiff_t diff = p2-p1;//指针的减法可以计算两个指针之间相隔的元素个数

     i = (int)diff;//ptrdiff_t类型的值可以转化为int类型的值

10、scanf 输入函数

scanf()函数结合寻址运算符&,允许将键盘输入的数据存储变量中

 

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值