C++基础知识(数据类型+逻辑判断+数组+指针+继承)

Basic Knowledge

cpp, h

头文件 h, 类,数据声明;
cpp,运行文件

Debug vs Release

Release: 发布版本

Debug: 调试版本。 占用内存大,报错信息丰富。
step over:直接执行完函数
step into: 走进函数
step out: 跳出函数,直接执行完。

数据printf

	printf("mary have %d lambs, price is %.2f",3,55.4);  //占位符
	printf("\nmary have %d lambs, price is %.2f", 3, 55.4);  // /n换行
	return 0;

数据类型

char
short
int
long
long long
float
double
bool
在这里插入图片描述

想要强制转换类型
(int) a

进制

1个字节为8位:
6-7 0-3
1000 1000

即为二进制: 0b10001000; 十六进制0x88.

short 为16位
15-12 11-8 7-4 3-0
1000 1000 1000 1000

十六进制:0x8888
<<左移
>>右移

八进制,十六进制

010 //8 八进制
0xa //10 十六进制
0b11 //3 二进制

\n 换行
\t 制表符4空格

左移多少位: << 8;

	unsigned char a = 0x01;
	unsigned char b = 0x02;
	unsigned int bufSize = 0;
	cout << a + b << endl;
	bufSize = a;
	bufSize = a << 8;  //相当于 *2^8
	bufSize += b;
	cout << bufSize << endl;
	return 0;

char 是有符号的
unsigned char 是无符号的,里面全是正数
1.两者都作为字符用的话是没有区别的
2.但当整数用时有区别:

常量

constat int a =7;

typedef可以简化数据类型

typedef unsigned short UINT16;

条件语句

逻辑判断

&&与
|| 或
!非

按位与 &
按位或 |
按位取非 ~

unsigned char a = 0x81;
unsigned char b = a | 0xfe;
cout<<(int) b<<endl;
//将最后一位置0
// char 0x88;
//int 0x8888;

如果fscore>=0, 就取fscore; 否则取0;

	int fscore = 33;
	fscore = fscore >= 0 ? fscore : 0;
	cout << fscore << endl;
	return 0;

if 判断

非零即真,非空即真

数组

一维数组

int[2] = {
   1,2};

二维数组

int[2][2] = {
   {
   1,2},{
   2,3}};

结构体

struct Student {
   
	char sName[255];
	int iHeight;
	float fWeight;
}

typedef struct node {
   
	int value;
	struct node* next = 0;
	// 构造
	node(int n) {
   
		value = n;
	}
}node;

int main(void){
   
	//初始化方法1
	Student a1 = {
   "Henry", 172. 66.7};
	//初始化方法2
	node* node1 = new node(1);
	
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值