美文网首页
07 引用 指针 和传递

07 引用 指针 和传递

作者: LuckTime | 来源:发表于2016-06-18 09:55 被阅读9次

一,尽量用引用来传递变量
二,尽量用const 来限制形参的修改

代码区
数据区
-----------------
常量区
----------------
----------------
---------------

三,全局变量和静态变量都是默认初始化0.
|----------------|

代码区
数据区
-----------------
常量区
----------------
----------------
---------------

int main(int argc, char* argv[])
{
int m = 15,n=25; //c
vor(m); //形参的传入,相当于是m的复制一份给vor函数,用完消失
cout << m <<endl;
inr(m); //数值地址传入,是对地址进行修改。(引用和取别名)是对源参数的再次命名。。而指针是对指针指向进行交换。
cout << m <<endl;
return 0;
}

void inr(int& m) //---------------引用
{
++m;

}

void vor(int m)
{
++m;

}
//--------------------------------------------------------------------
//--------------------------------------------------------------------
//-------------------------------------------------------------------
//===============函数指针====================

// class.cpp : Defines the entry point for the console application.
//

include "stdafx.h"

include <iostream>

include <string>

include <cstring>

using namespace std;

void reset(int a[], int n);
void input(int a[], int n);
void output(int a[], int n);
void sort(int a[], int n);

int main(int argc,int argv[])
{
void (fp)(int a[],int n) = NULL;//函数指针 将函数名改为(fp),并实现初始化
//void sort(int a[], int n);将函数名改为上面的函数指针。
int x[5];
fp = output; //将指针函数 等于 output函数
output(x,5); //-------------
fp(x,5); //---------两者输出结果一样

//--------------------
fp = reset; //必须是参数相同的同类函数
fp(x,5);
fp = output; //将指针函数 等于 output函数
output(x,5); //-------------
return 0;
}

void output(int a[], int n)
{
for(int i= 0;i <n ;i++)
cout << a[i] << " " <<endl;
}

void reset(int a[], int n) //初始化地址,将数组全部归零
{
memset(a,0,sizeof(int) *n); //a为数组首地址 三个参数
//for(int i =0; i < n; i++)
// a[i] = 0

}

相关文章

  • C++基础

    C++ 值传递、指针传递、引用传递详解C++中引用传递与指针传递区别 引用传递和指针传递的区别 引用的规则:(1)...

  • 07 引用 指针 和传递

    一,尽量用引用来传递变量二,尽量用const 来限制形参的修改 三,全局变量和静态变量都是默认初始化0.|----...

  • 读书笔记17.06.02【stack】【vector】

    C++中参数传递:按值传递,指针传递和引用传递按值传递:形参是实参的拷贝。指针传递:拷贝指针,被调用函数对指针指向...

  • C/C++ basis 01

    1. C和C++区别 2. 指针和引用 sizeof(引用)等于 引用指向对象的大小。 对比值传递,引用传递(引用...

  • Go语言学习笔记(三)

    指针 Go的指针不能运算 参数传递 Go的参数传递是值传递(值传递:开辟新的空间,拷贝传递参数的值,引用传递:引用...

  • c++重要的概念部分

    1. const 修饰指针 2.指针和数组 3.值传递和地址传递(相当于java的引用传递) 值传递:特点 不改...

  • 自整理3 值传递和引用传递

    java的值传递和引用传递 首先,由于java没有指针机制,所有java归根究底只有值传递,没有引用传递。java...

  • 王道程序员求职宝典(十)函数,栈与队列

    函数 参数传递值传递指针传递引用传递指针引用*& 内联函数成员函数内联普通函数内联宏定义 默认参数从右向左设定默认...

  • 值传递、地址传递的笔记

    在C语言中,理解值传递、地址传递和引用传递非常重要,首先,我们得来区分一下指针变量、指针地址、指针的值之间的关系。...

  • Java面试集锦

    1. 引用传递的问题(记住java里面是没有指针的,只有值拷贝和引用拷贝) 引用拷贝拷贝的实际是地址,当引用传递过...

网友评论

      本文标题:07 引用 指针 和传递

      本文链接:https://www.haomeiwen.com/subject/sanvdttx.html