A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© Esther33 中级黑马   /  2015-8-7 21:12  /  831 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

函数的声明
1.概念:是对编译系统的一个说明,用于通知系统在函数中所调用的函数是什么类型
2.作用:可以告诉编译器我将定义什么函数,从而让别的函数能方便调用
3.用法:把函数去掉{}拷贝到声明区域(函数里或外)就可以了,返回值  函数名(形式参数1...)
4.特点:①仅声明可以不创建函数,但要调用必须定义函数;
             ②声明可以只有参数类型,省略参数名;
             ③函数使用前应声明,不声明就默认当返回值是int类型来处理,很可能出错;
             ④声明区域可以在其他函数里或函数外,只要放在本函数调用之前就可以。

C语言的头文件
1.概念:是C语言中以.h结尾的文件
2.作用:用于声明一个函数,把多个代码文件中的函数,声明在这个文件中,以便于重用、防止定义的冲突
3.用法:定义--新建一个以.h结尾的文件,把需要用到的函数的声明直接放在里面
             引用--自定义的头文件:#include  "头文件名.h"
             编译器类库里的头文件:#include <头文件名.h>
4特点:①在头文件中仅作声明,不做具体实现
            ②在头文件有声明只能确保编译成功成.o文件,但不确保能连接成功
            ③自定义的头文件引用时必须要由路径

#include的用法
1.是C语言中的一个预处理指令
2.作用:用于把一个文件的内容拷贝到这行命令所在的位置
3.用法:引用--自定义的文件:#include “文件路径和名称”
            编译器类库里的文件:#include <文件名>
4:特点:①可以定义在函数内也可以放在函数外
               ②必须包含路径,省略或./表示当前路径,/开头表示绝对路径,../表示上一层路径
               ③以#开后,后面不能加分号
               ④必须定义在要使用之前,否则可以编译通过成.o文件,但不能连接成功
进制
1.概念:是人们规定的一种技术方法
2.用法:二进制逢二进一(0b开头),八进制逢八进一(0开头),十进制是逢十进一,十六进制逢
              十六进一(0x开头)
3.进制的打印输出:%o表示输出不带符号八进制整数
                            %x表示输出不带符号的十六进制整数
                            %d表示输出有符号十进制整数
                            %u表示输出不带符号十进制整数

注意:二进制不可以直接输出,有符号可以有负数表现

数据取值范围

unsigned int啊=-214  不能定义超出数据类型取值范围的数,否则定义出错
unsigned 和signed只能修饰int型,修饰int时,int可以省略
无符号的int取值范围是:包含最高位的二进制的次方数-1

类型说明符
1.概念:是C语言中用来说明某个变量是什么类型的关键字

signed--->能修饰int   %d
unsigned--->能修饰int %d
short---->能修饰int%d
long--->能修饰int  %ld 和double  %Ld
long long --->能修饰int  %lld

unsigned long --类型说明符可以累加,如果省略了基本数据类型,那么基本数据类型是int
unsigned short --表示无符号的短整型
long short --错误的,long 和short只能修饰基本数据类型
有符号的char类型是-128~127
无符号的char类型是0~255

位运算
1.概念:是直接对整数在内存中的二进制位进行运作的方法(只能操作整型数据)
2.作用:直接通过操作二进制的位来实现运算
3.用法:
&与运算:对应两个二进位均为1时,结果位才为1,否则为0(有假为假==0)。
|或运算:对应的两个二进位有一个为1时,结果位就为1,否则为0(有真为真==1)。
^异或运算:对应的二进位不同时为1,否则为0(不同为真==1,相同为假==0)。

异或时注意:1.相同整数相^的结果是0
         2.一个数^另一个数两次结果不变,为它本身
         3.整数相^跟顺序无关

~取反运算:对整数a的各二进位进行取反,包括符号位(0变1,1变0,真假互换)。
                 取反是单目操作符,也就是只操作一个数
       注意: ①计算机里:补码==原码==反码(不是指表现形式相等,是指真实的值相等)
                 ②正数的补码、反码、原码的表现形式是一样的
                 ③负数的补码=反码+1,反码=原码符号位不变其余取反
<<左移:把整数a的各二进位全部左移n位,高位丢弃(包括符号位),低位补0。
              左移n位其实就是乘以2的n次方(要求符号位不变,符号位改变则正负改变)。
               3<<1 --->6 --->3*2的1次方
               3<<2 --->12 --->3*2的2次方
               3<<3 --->24 --->3*2的3次方

>>右移:把整数的各二进位全部右移n为,符号位不变。高位的空缺是正数补0;
              是负数高位是补0或是补1,取决于编译系统的规定,右移n为其实就是除以2的n次方。
              3>>2 --->1 --->3/2的1次方
              3>>1 --->0 --->3/2的2次方

转义字符
1.概念:用来改变字符原有的含义
2.作用:用来表示常见的那些不能显示的ASCII字符

数组
1.概念:用来存储一组数据的容器
2.作用:用于把同一类型的一组数据统一管理起来
3.用法:定义--数据类型  数组名[长度(数量)]
             初始化--类型  数组名[(长度)]:={元素1,元素2...}
             赋值:数组名[角标(索引)]=值
             使用:数组名[角标];   如int a = arr[0]
4.特点:①数组必须要定义长度(正整数),定义时可初始化(长度必须是常量)或之后单独初始化
            ②数组是有序的,每个数据都有角标,从0开始分配,角标不能>=数组长度,类型一致
            ③数组有地址(数组名),里面的元素也有地址,数组当参数时(长度可省)传递的是地址
            ④数组当参数传递时是指针类型,所以如果需要用数组长度要额外传递

如果省略长度,那么后面初始化几个元素,长度就为几
当没有在定义数组时赋值,不能省略长度,如int arr8[ ]   错误
类型要一致,不然会丢失精度 ,如 arr7[0]=2.2  错误
数组第一个元素的地址就是这个数组的地址

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马