标签:pac 整数 负数 后缀 两种 过程 += span 算术
(1)程序设计分两种:
1.结构化设计(面向过程)——分解算法为模块,将算法的步骤分解为模块。
2.面向对象程序设计——主要是“类”与“对象”。
(2)进制的转换
1.二进制转十进制
整数部分与小数部分分开计算,整数部分“除2取余”倒排序;小数部分“乘2取整”正排序,出现循环的进行截断,取循环部分。
2.二进制转八进制和十六进制
三位二进制转成一位十进制数为一位八进制,四位二进制转一位十六进制。
关键字:int、float、unsigned、double等
标识符:abc、Abc、_bc、abc123等
标识符命名原则:
(1)由数字、字母和下划线组成
(2)不能以数字开头,区分大小写
(3)标识符要有意义
数据类型 变量名1,变量名2,...,变量名n;
变量的写入:输入
cin>>ctemp; //输入
ctemp = 36; //赋值
int x = 10,y; //初始化
变量的读出:
ftemp = ctemp * 1.8 + 32; //自动读取 cout<<ftemp; //输出
字面常量:实数、负数、整数,一般默认为十进制数,后缀形式有长整形L、无符号u、浮点型f等
符号常量:
#define PI 3.14
字符串常量:双引号括起来,如 “CHINA”
const 数据类型 变量名=初始值; const int x=10;
不能修改,不能赋值,只能读取。
加(+)、减(-)、乘(*)、除(/)
数据类型转换:
(1)强制转换
short(32) //转成短整型 float(32) //结果:1.8 单精度,4字节 double(1.8) //双精度,8字节 short(932769) //结果:-32767(溢出) int(1.8) //结果:1 丢失小数位
(2)自动转换
char short int long float double
低 高
5 / 2 = 2 5.0 / 2 = 2.5
取余:% 10 % 6 = 4
自增/减:++、--
x++:先x,后+1
++x:先+1,后运算,例
int x = 10, y; y = (x++) * 2; //结果为20 y = (++x) * 2; //结果为22
位反运算符:~ 按位取反,0转1,1转0
位与运算符:& s & 0x2 结果为0000 0010时倒数第二位是1,结果为0000 0000时倒数第二位是0,用于检测倒数第二位的状态,0x2位掩码
位或运算符:| 一真即为真
位异或运算:^ 非
左移运算符:<< s<<2 左移两位,高2位移除,低2位补0
右移运算符:>> 低位移除,高位补符号位
a = 10;b =10;c = 10; 等价于 a = b = c = 10; y = x; x = x + 1; 等价于 y = x++; x = x + 1; y = x; 等价于 y = ++x;
复合赋值运算符:
+= -= *= /= %= |= ^= <<= >>= x += 5; 等价于 x = x+5;
C++中为输入/输出流,键盘(cin)、显示器(cout),C++要输入输出需要导入外部程序
#include <iostream> using namespace std;
cin输入流,标准输入,可同时输入多个数据,用空格或Tab键隔开,cin>>x>>y;
cout输出流,称为标准输出,
int x=5; cout<<x; //5 cout<<x<<x * x; //525,中间无间隔
直接访问:变量名
间接访问:引用和指针
引用:
引用类型 & 引用变量名 = 被引用变量名; int x; int & xa = x; 或 int x; & xa = x; int x,y, & xa = x; 例 int x = 10,y = 20; int & xa = x;
指针:内存地址 取地址运算符:& 取变量内存地址的首地址。
& 变量名 int x = 10; cout <<&x; //输出变量x的地址,一个8位的十六进制数,4个字节
通过地址访问某个变量x,分3步:
(1)定义一个专门保存地址的变量(假设为P)称指针变量
(2)取出变量x的地址,赋给p
(3)通过指针变量p所保存的地址访问变量x的内存单元
注:指针的指向类型不能改变,整型(int)指针只能指向整型,指针变量也是一个变量,也有其内存单元。
定义指针变量
指向类型 *指针变量名; int x, y; int *p; //定义指针变量p,未指向任何变量 p = &x; //取x的地址赋给指针变量p,则p指向x int *p = &x;
指针运算符:*
* 指针变量名 *p int x; int *p = &x; *p = 10; cout<<*p; //结果:10 cout<<p; //显示p中保存的地址即8位十六进制数
注:*p 相当于x的另一个名字或标签
void类型
int x = 10; double y = 10.5; void *p; cout<<*((int*)p); //显示:10,需要强制转换为int p = &y; cout<<*((double*)p; //显示:10.5,转为double
指向常变量的指针
const int x = 10; const int * p; p = &x; cout<< *p; //正确 *p = 15 //错误
定义指针类型的常变量
int x =10, y = 20; int *const p = &x; //初始化,以后不能修改
标签:pac 整数 负数 后缀 两种 过程 += span 算术
原文地址:https://www.cnblogs.com/yangyangjia/p/12203164.html