极简C++(1)基础语法简介

输入输出

输入:cin>>x
输出:cout<<“x=”<<x<<endl

int x;
cin>>x;
cout<<"x="<<x<<endl
运行结果:x=10(endl表示换行)

在程序最前面必须加

#include <iostream>
using namespace std;

命名空间

为了防止程序中的同名问题,最常见的是用std来命名空间
using namespace std;

const常量

常量在声明的时候必须赋予初值,并且在程序执行过程中不得修改
const 类型 常量名=初值;
const int LENGTH = 10;
(一般使用常量的时候,我们的命名用全大写字母)
这里有个常问的问题就是 const 和 define 的区别是什么?
1.处理阶段不同:define是预处理器预处理阶段处理的,const是编译器编译阶段处理的
2.内存:define不占内存,const会分配内存去存储变量
3.安全性:define只是简单的替换,没有数据类型与作用域的规定,可以将任何文本替换成宏定义而const会进行类型检查,更加可靠
所以,编码的时候建议大家使用const;

new和delete

new和delete用于堆空间的内存分配与回收
new:用于从堆中分配指定大小的内存,并返回内存的首地址。
delete:用于释放new分配的堆内存。

int *arr = new int[100]; 
delete[] arr;
# 这样可以分配和释放一个动态数组

引用

引用是某个变量的别名

int a = 10;
int &b = a;

常常作为形参的方式来使用,不会像上面这样使用
&只有在变量声明的时候才是引用,其他地方使用是取地址运算符
接下来举个例子说明一下

#include<iostream>
using namespace std;
void swap(int &a,int &b)
{
    int temp = a;
    a = b;
    b = temp;
}
int main()
{
    int x = 5, y = 10;
    cout<<"x = "<<x<<" y = "<<y<<endl;
    swap(x,y);
    cout<<"x = "<<x<<" y = "<<y<<endl;
    return 0;
}
输出:
x = 5 y = 10
x = 10 y = 5

是不是有点熟悉,但又说不上来,那我们先复习一下,函数传参有几种方式呢?

1.传值模式:
在这里插入图片描述
在这里插入图片描述

我们可以看到,程序为a,b分配了内存,并且a,b的值交换了,但是x,y的值还是不变的,这就是我们的传值模式;

2.传地址模式
在这里插入图片描述
在这里插入图片描述
我们可以看出,我们是将x与y的地址传入函数,main和swap共用了xy的存储空间所以x,y会被改变;

3.传引用模式
在这里插入图片描述
为x,y新添了一个别名a,b,操作a,b,实际上改变的还是x,y;

函数重载

函数重载就是函数有多种用法,即函数名相同,但参数不同
可以是参数类型不同:
int add(int a, int b);
float add (float a,float b);
也可以是参数个数不同:
int add(int a, int b);
int add(int a, int b,int z);
典型错误:
在这里插入图片描述
注:传参的时候不能混淆
在这里插入图片描述
这种形式是错误的,因为传递参数时,一个数既可以传给int也可以传给double,这个时候就不知道调用那个函数了

带默认参数的函数

函数在声明的时候可以给定默认的参数值,调用时如果给定实参,则采用实参,否则采用预先的参数值。
在这里插入图片描述

作业

从标准输入接受整形输入n,动态分配储存空间为n的数组radius。
从标准输入输入n个浮点数储存在radius中,这n个数代表了n个圆的半径。
编写函数sumArea(double* radius,int n)求这n个圆的面积之和
输出总面积,保留小数点后5位
尽量使用cin/cout,const,namespace,引用,new/delete等知识点

#include <iostream>
using namespace std;

const double pi = 3.14;
// 函数sumArea(double* radius,int n)求这n个圆的面积之和
double sumArea(double* radius,int n)
{
    double area;
    for(int i=0;i<n;i++)
    {
        area += pi*radius[i]*radius[i];
    }
    return area;
}


int main()
{
    // 接受整形输入n,动态分配储存空间为n的数组radius
    int n;
    cout<<"please input a number"<<endl;
    cin>>n;
    double* radius = new double[n];
    // 输入n个浮点数储存在radius中,这n个数代表了n个圆的半径。
    for(int i=0;i<n;i++){
        cout<<"please input R"<<endl;
        cin>>radius[i];
    }
    double allareasum = sumArea(radius,n);
    cout<<allareasum;
    cout.precision(5);
    cout<<"总面积为:"<<allareasum<<endl;
    delete[] radius;

    return 0;  
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
C++是一种通用的编程语言,它支持面向对象的编程风格,并且具有强大的系统编程能力。下面是C++的一些基础语法: 1. 注释:在C++中,注释可以用来解释代码,以便于其他人阅读和理解。单行注释使用双斜线(//),多行注释使用斜线和星号(/* ... */)。 2. 标识符:标识符是变量、函数、类等的名称。标识符由字母、数字和下划线组成,并且以字母或下划线开头。 3. 变量:在C++中,需要声明变量来存储数据。变量的声明包括类型和名称。例如,int表示整数类型,而float表示浮点数类型。 4. 数据类型:C++提供了多种数据类型,包括整型(int、short、long)、浮点型(float、double)、字符型(char)、布尔型(bool)等。 5. 运算符:C++支持各种运算符,例如算术运算符(+、-、*、/)、关系运算符(==、!=、<、>)、逻辑运算符(&&、||、!)等。 6. 控制流语句:C++提供了多种控制流语句,例如条件语句(if-else)、循环语句(for、while、do-while)、跳转语句(break、continue、return)等。 7. 函数:函数是可重用的代码块,用于执行特定的任务。函数由函数头和函数体组成,函数头包括返回类型、函数名和参数列表。 8. 类和对象:C++是面向对象的语言,支持类和对象的概念。类是一种用户定义的数据类型,用于封装数据和方法。对象是类的实例,可以通过调用对象的方法来操作数据。 这只是C++语言的一些基础语法,还有很多其他的概念和特性。如果你对某个特定的主题有更深入的兴趣,我可以为你提供更详细的信息。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值