c++ 入门基础(一)

第一个c++程序

# include <iostream>  // 标准输入输出流  input输入  output输出

using namespace std; // 使用标准 命名空间

int main(){
    //cout 输出流对象 向屏幕输出内容  endl 结束输出且换行
    cout << "hello world!" << endl;
    return 0;
}

c++ 数据类型

bool

布尔

表示是否的概念 false true 0 1

int

整数

表示计数或数量

float

单精度

近似表达实数的概念

double

双精度

近似表达实数

char

字符

代表一个ASCII码符号 -128 - 127

void

表示没有,或者空的概念

//sizeof(变量) 或者 sizeof(类型) 来探测 可以使用sizeof来查看占用内存
sizeof(int); // 4字节 1字节==8位
typedef long long int LL; //typedef 可以给类型赋予别名,与原名等价

变量及其作用域

生存期:什么时候分配内存,什么时候释放内存

作用域:在什么位置可见,什么位置不可见

#include <iostream> 
using namespace std;
//全局变量
//全局变量可以初始化,可以用表达式
//全局变量可以在多个函数间,多个文件间共享
//全局位置不能执行非定义语句
int a = 100;
int b = 200;
int c;
c = a + b;  // 编译错误!不能在全局位置执行其它语句
int main()
{
    cout << c << endl;
    return 0;
}

// 局部变量
int main()
{
    int a = 5, b = 8;
    { int t = a; a = b; b = t; } // t 作用域仅在大括号内
    cout << a << "," << b << endl;
}

常数与常量

//常数:也叫立即数,或者“字面量”,就是硬编码到程序中的那些“死”数据
//字符常数 整型常数 浮点型常数
char a = 'A';
int a = 365;
double a = 0.5e12;
//常量 用 const 修饰的变量,它占用数据区内存,但编译器保证你不能修改它的值
const int PI = 3.14; (#define PI 3.14)
//枚举类型
enum week{Mon, Tue, Wed, Thu, Fri, Sat, Sun} a;

修饰符

//类型修饰符
//对大类型进行细化, short long signed unsigned
//const 常量,
//volatile 不要进行自动优化

//存储修饰符
//static 修饰,静态空间,与全局变量同在
//extern 跨文件的伪声明 并不分配内存,只是告诉编译器,全局变量会在另一个地方声明

内存类型

//只读代码: 存代码,也包括立即数,以及定常资源
//静态空间: 存放static变量,全局变量,常量
//栈区(stack): 自动变量,函数执行时的上下文环境  ***后进先出
//堆(heap): 程序运行中,动态地申请及归  ***自由进出

基本运算符

// 字符型也可以参与整数运算
char b = 'A';
b = b + 32;
cout << b << endl;

选择与分支

//if 的条件中尽量用 bool, 其它类型会强制转为bool
xxx = a ? b : c; // ?: 是唯一的三目运算符

int a = 5, b = 2, c = 8;
if(a>b && a>c)
    cout << (b > c? b : c) << endl;
if(b>a && b>c) 
    cout << (a > c? a : c) << endl;
if(c>a && c>b) 
    cout << (a > b? a : b) << endl;

//switch语句的使用 满足要求记得使用break
switch(表达式){
case 1:
        代码块1;
        break;
case 2:
        代码块2;
        break;
default:
        默认处理
}

循环

1、while 和 do..while

2、for循环

// 打印九九乘法表 for
int nine_nine_cheng_fa_biao()
{
    for(int i = 1; i<=9; i++)
    {
        for(int j=1; j<=i; j++)
        {
            cout << i<< "*"<< j << "="<< i*j << " ";
        }
        cout << "" << endl;
    }
}
// 打印九九乘法表 while
int nine_nine_cheng_fa_biao1()
{
    int i = 1;
    while(i <= 9)
    {
        int j = 1;
        while(j <= i)
        {
            cout << i << "*" << j << "=" << i*j << " ";
            j++;
        }
        cout << "" << endl;
        i++;
    }
}

函数的定义

//函数定义时的参数,称为:形式参数,简称: 形参
//调用函数时,传给它的参数,称为:实际参数,简称: 实参
//函数是重要的==抽象==手段
//函数能让我们把问题分解,化为一个一个小的功能去实现 自顶向下的设计
int myadd(int a, int b){
    int t = a * 10 + b;
    return t;
} // 使用直接在主函数调用

指针

指针就是存放其它变量地址的小盒子,就好比门牌号,咱们可以通过门牌号找到你家,指针也是如此,可以通过储存变量的地址找到变量的具体值

int a = 10;
int * p;
p = &a;
cout << &a << endl;
cout << a << endl;
cout << p << endl; // 打印a的地址
cout << *p << endl; // 打印a的值
/*可以在参数中使用指针
形参是指针类型时,可以改变实参的值
我们可以利用这个特性,间接地实现多个返回值*/
void swap(int* a, int* b) //交换俩个变量的值
{
    int t = *a;
    *a = *b;
    *b = t;
}

引用类型

//引用实则就像取别名,像多对一,一个物品可以有很多哥标签
//在实现上 ,被转换为对指针的操作
int a = 100;
int& b = a;
b++;  //实际上就是 a++

数组

数组就是存在一起的一组相同类型的变量 就是一个个地址紧挨的变量 储存在栈中

// 查看数组占用的空间
#define N 100 
......
int a[N];
cout << sizeof(a) << endl;
return 0;

// 元素初始化
//指定元素个数
int a[3] = {10,20,50};
//不指定元素个数(自动推断)
int a[] = {3,6,9};
//指定值的个数少于元素个数
int a[10] = {10,20,30}; //没有赋值的元素初始化是随机值

ps:记录一下学习的过程,希望对大家有些帮助

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值