日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

指针的引用做函数的参数

發布時間:2025/3/15 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 指针的引用做函数的参数 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
#include <iostream>using namespace std; // 二級指針的使用 [11/24/2017 Andrew]struct Teacher {char name[64];int age; }; // 在被調用函數中獲取資源必須使用二級指針,因為局部函數 //中申請的變量會在函數調用結束的時候被釋放掉,因此要使用二級指針 獲取申請內存的實際地址 //這樣就算局部函數申請結束的時候,也能夠得到想要的內存空間 int getTeacher(Teacher **p) //傳進來的指針是傳值,多以編譯器會從新申請一個指針,只不過跟原來的指針指向同一個內存區域 //會被編譯但是新的指針的改變并不會改變原來指針值,只能通過指針改變指針指向的值,反過來要想改變指針必須使用指向指針的指針{Teacher *temp = NULL;if( p == NULL ){return -1;}temp = (Teacher *) malloc(sizeof(Teacher));if(temp == NULL){return -2;}temp ->age =33;//通過修改實參的地間接的修改實參的值*p = temp;return 0; } //C++中的指針的引用 ,做函數參數int getTeacher2(Teacher * &myp) {//因為使用的是引用,因此給myp賦值就相當于給main函數中的pt1賦值myp = (Teacher *) malloc(sizeof(Teacher));if( myp == NULL ){return -1;}myp ->age =36;return 0;} void FreeTeacher(Teacher *pt) {if(pt == NULL){return ;}free(pt); } int main() {Teacher *pt1= NULL;// 1 C語言中的二級指針 [11/24/2017 Andrew]getTeacher(&pt1);cout << "age :" << pt1->age << endl;FreeTeacher(pt1);// 2 C++中的指針的引用 [11/24/2017 Andrew]getTeacher2(pt1);cout << "age :" << pt1->age << endl; FreeTeacher(pt1);system("pause"); return ·120; }

總結

以上是生活随笔為你收集整理的指针的引用做函数的参数的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。