
c++基础专栏
以c++基础知识为主
我是路人乙1
暂不添加
展开
-
vs2017无法下载安装文件,请检查internet连接
找了几天的离线包,系统重装了多次。最后解决办法就这。转载 2022-05-12 15:43:54 · 1660 阅读 · 0 评论 -
c++ 基础知识(六) 结构体字节对齐
我们在使用结构体的时候,有没有发现这样的情况,用sizeof(结构体)算出来的内存字节数与结构体里面的数据所占内存字节数总和不匹配。比如以下:struct A{ char a='0';//占用1个字节 int b=0;//占用4个字节 short c=0;//占用2个字节};本来总共应该是7个字节但是用sizeof(结构体)算出来却是12个字节今天我们来看看到底是怎么回事呢?原来啊,是编译器帮我们做了字节对齐。做字节对齐的目的是提高内存的访问效率。比如32位CPU,每个总线周原创 2020-12-28 12:56:22 · 313 阅读 · 0 评论 -
c++ 基础知识(五) 函数调用栈
1、首先我们来弄清楚栈是什么?栈:简单来说,栈就是一个先进后出的数据结构,这个和函数的调用过程一样,调用时,调用函数在前,被调用函数在后,返回时,被调用函数先返回,调用函数在后。正好符合先进后出的结构。我们先来看看栈的push,和pop操作。比如往栈中压入一个元素,如下图:(左边为压入之前的图,压入之后则为右边的部分)那如果弹出来呢这样我们可以清楚看到栈的Push和pop操作。2、栈帧是什么呢?其实栈帧本质上也是一种栈,它专门保存函数掉用的各种信息比如变量,返回地址,参数..原创 2020-12-24 16:10:35 · 1715 阅读 · 1 评论 -
c++ 基础知识(四) 回调函数
一、回调函数的定义 那什么是回调函数呢?其实回调函数就是一个函数指针调用的函数。如果你把函数的指针作为参数传递给另一个函数,当这个指针被用为调用它指向的函数时,我们这就称为回调函数。二、为什么需要使用函数函数? 因为可以把调用者和被调用者分开,调用者不需要关心被调用者是谁,它知道的只是具有某种特定原型,某些限制条件的被调用函数。三、示例:typedef double(*Test1)(double dValue);//声明double add1(double ...原创 2020-12-21 14:14:21 · 142 阅读 · 0 评论 -
c++ 基础知识(三) 函数指针
1、定义:函数指针就是指向函数的指针,它表示一个函数的入口地址,使用函数指针的好处就是在处理“在运行时根据数据的具体状态来选择相应的处理方式”,比较灵活。我们知道声明指针时,我们需要指定指向的类型;同理,我们声明函数指针时,则指定函数的类型,包括返回值,参数列表。例如:double(*fp)(int nValue);//返回值为double类型,参数列表为一个int型参数注意区分: int (*p)(int a,int b);//p是一个指向函数的指针变量,所指函数的返回值类型..原创 2020-12-17 15:39:44 · 198 阅读 · 0 评论 -
c++ 基础知识(二) 函数
一、函数的传递方式 1、值传递 形参是实参的拷贝,改变形参的值并不会改变外面实参的值,从一定的角度来说,值传递是单向的---------(实参---》形参),参数的值只能传入,不能传出。 应用场景:当函数内部需要修改参数,但是不影响调用者时,则用值传递。void Test(int _nValue1, int _nValue2)//值传递{ _nValue1 = 10; _nValue2 = 20; cout << "_nV...原创 2020-12-16 14:14:34 · 144 阅读 · 0 评论 -
c++ 基础知识(一) 指针
前言提示:以下是本篇文章正文内容,下面案例可供参考一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码如下(示例):import numpy as np import pandas as pd import matplotlib.pyplot as plt import seaborn as sns import warnings warnings.filterwarnings('...原创 2020-12-14 16:01:16 · 880 阅读 · 0 评论