c/c++中常用知识点

system(“cls”);或者system(“clear”); 表示在操作界面清屏

system(“pause”); 表示“暂停一下”//按任意键结束

fopen打开文件 fopen(“文件名”,“打开方式”)

打开后得到一个文件指针(流)

其中打开方式有:

(mode) 打开方式有如下几种

“r” 以“读”的方式打开一个文本文件(只能读)

“r+” 与"r" 的区别在于,增加了“写”

“rb” 以“读”的方式打开一个二进制文件(只能读)

“rb+” 与"rb"的区别在于,增加了“写”

“w” 以“写”的方式创建一个文本文件,如果这个文件已经存在,就会覆盖原来的文件

“w+” 与"w"的区别在于,增加了“读”

“wb” 以“写“的方式创建一个二进制文件

“wb+” 与"wb"的区别在于,增加了“读”

“a” 以“尾部追加”的方式打开一个文本文件, (只能写)

“a+” 以"a"的区别在于,增加了"读"

“ab” 以“尾部追加”的方式打开一个二进制文件, (只能写)

“ab+” 与"ab"的区别在于,增加了“读”

//可以定义一个文件指针变量保存得到的指针流

FILE*file; //定义了一个文件指针变量,变量名是file;

file=fopen(“users.txt",“r”); //保存打开后得到的指针流。

if(fileUNLL){ //判断文件是否被打开,或者文件不存在
//空文件之类
printf(“文件打开失败”); //UNLL等价于0———>file
UNLL<–>file0
//return值为1,表示程序非正常进行,习惯上的用法
return 1; //c程序员一般不写成(file
NULL)–>(!file)两者等效

从一个文件中读取一行用fgets

用法:fgets(buff,sizeof(buff),stdin);

stdin 标准输入设备(一般就是键盘)。 计算机linux,windows下一
般都将设备看作文件。

sizeof可以返回一个数组的长度;占用内存的字节数

char line[127]

line=“admin 123456” == ‘a’,‘d’,‘m’,‘i’,‘n’,’ ‘,‘1’,‘2’,‘3’,‘4’,‘5’,‘6’,’\0’
最后一项为字符串结束符—>a[10]实际上只能存九个字符;

sscanf
从一个字符串中读取数据;
sscanf(line;%s %s;,name_tmp,password_tmp);
line 读取目标的数组名 %s %s 读到的数组占位符;
name_tmp,password_tmp;保存的位置。

字符串比较strcmp

if (!strcmp(name,name_tmp&&!str(password,password_tmp)))
{
break;
}
//引用#include<string.h>
//strcmp(字符串1,字符串2);如果两者相等返回值就等于0;

getchar() 从标准设备(键盘)读取一个字符;

type 打印文件内容;

******** fflush(stdin)//清空输入缓冲区;

变量
不是数学中的变量,变量是一个内存中的一块储存空间,即一小块内存;内存的基本储存单位是字节,一个字节包含八位二进制位;

变量的命名规范
1,只能包含三种字符(数字,大/小写字母,下划线);
2,不能以数字开头(即只能以下划线和字母开头);
3,不能和”关键字“同名(比如 c语言中的int);

计算字符串的长度strlen
#include<stdio.h>
#include<string.h>

int main(){
char name[]=“ROCK”;
printf(“len=%d\n”,strlen(name)); //strlen求字符串的长度。
return 0;
}

字符串常量
在c语言中字符串是以”字符数组“储存的,字符串常量要求用“”括起来,
printf(“name=%s”,“ROCK”);

输入
scanf遇到空白字符停止。
gets遇到回车符停止(读取一行),但是存在越界的危险。
fgets也是读取一行遇到回车符为止,安全。
fgets(name,sizeof(name),stdin);

字符串的拷贝strcpy//strncpy
#include<string.h>
1,string(name1,name2);//把name2拷贝到name1.
2,strncpy(str1,str2,3);//从str2拷贝三个字符到str1.
如果不够则用0补。

**# define 标识符 常量 **

#dfine PI 3.1415926

const修饰符1

const表示将变量声明为只读,就是程序只可以读取,不可以更改。

const int a=10;

bool逻辑关系
true 表示为真(1)
false 表示为假(0)

运算符的目
单目运算符;++,——,&等;
双目运算符;+,-,*,/等
三目运算符;(?:)。

%(取模 求余)

sizeof运算符
sizeof(类型名)或者sizeof(变量名)

其结果是无符号整数,表示储存类型名或变量名的值所需要的字节数
sizeof(int)=4.

位逻辑运算
1,&(按位与运算符)
4&7
4(0000 0000 0000 0100)
7(0000 0000 0000 0111)
————————————————
4(0000 0000 0000 0100)
操作二进制数的相同位均为一时,结果的数值的相应位才为一否则为0.

-4&7
-4(1111 1111 1111 1100)
7(0000 0000 0000 0111)
————————————————
4(0000 0000 0000 0100)
2,|(按位或运算符)
操作二进制数的相同位均为0时,结果的数值的相应位才为0否则为1.

3,^(按位异或运算符)
将参与运算的两个数据,只有当对应的两个二进制数位互斥的时候,对应的结果才为1;

4,~(按位取反运算符)

按对应的二进制数逐位进行求反运算,即原来为1的位变成1,原来为0的位变为1。

位移运算

1,左移运算

3<<(0000 0000 0000 0101)->(二进制)

表示将左侧二进制位依次向左移动三位,左侧移出的被舍弃,右侧空出的用0补齐

2,右移运算符

图形处理函数

头文件:#include<graphics.h>

先初始化图形函数(否者所有的图形函数均不能正常工作哦)

其初始化是由初始化函数initgraph完成的。

函数原型
void initgraph(intgdriver,intgmode,char*path);
其中,gdriver用于指定图形驱动程序的种类;
gmode为指定的图形模式种类;
path是一个字符串,指定图形驱动所在的路径;

图形驱动程序有多种,例如
CGA
EGA
VGA等
其中使用较多的是VGA图形显示驱动程序(数值代码为9).
也可以使用符号常量DETECT由系统自动检测命令行界面下
图形显示器的最高分辨率模式,并装入相应的图形驱动程序。

猜你喜欢

转载自blog.csdn.net/xiao_dou_ya_cool/article/details/83352040