久久ER99热精品一区二区-久久精品99国产精品日本-久久精品免费一区二区三区-久久综合九色综合欧美狠狠

新聞中心

EEPW首頁 > 嵌入式系統 > 設計應用 > C++堆棧、參數的傳遞與指針

C++堆棧、參數的傳遞與指針

作者: 時間:2016-12-01 來源:網絡 收藏
//一。指針函數

#include "stdafx.h"

本文引用地址:http://cqxgywz.com/article/201612/324449.htm
void fun1(int a,int b)
{
printf("%d %d",a,b);
}
int _tmain(int argc, _TCHAR* argv[])
{
void (*fun)(int x,int y);//void 是被指函數的返回值類型,int為被指函數的形參類型
fun=fun1;
fun(10,20);
return 0;
}

二。參數的傳遞

// 0224.cpp : 定義控制臺應用程序的入口點。
//
#include "stdafx.h"
int a=3;
int b=4;
void fun(int &x,int &y)//這種情況是引用傳遞。即沒有在棧里開辟新的空間,交換了x,y的內存數據
{//注意這兒&的意義不是取地址
int tem;
tem=x;
x=y;
y=tem;
}
void fun1(int x,int y)//這種情況時值傳遞,會開在棧里辟兩個空間x,y,會交換棧里的值而不會作用于堆
{
int tem;
tem=x;
x=y;
y=tem;
}
void fun2(int *p1,int *p2)
{
int tem;
tem=*p1;
*p1=*p2;
*p2=tem;
}
int _tmain(int argc, _TCHAR* argv[])
{
fun(a,b);
printf("a=%d b=%d",a,b);
fun1(a,b);
printf("a=%d b=%d",a,b);
fun2(&a,&b);//形參是指針實參為地址
printf("a=%d b=%d",a,b);
return 0;
}


關鍵詞: C++堆棧傳遞與指

評論


技術專區

關閉