c語言指標作為函式變數怎麼用,c語言 編一程式 交換兩個變數的值(用指標做函式引數)

時間 2021-08-30 09:32:05

1樓:最大的寶寶

在函式exe中,應該用指標來改變它指向的值,而不單純改變指標的值。因為這個指標只是一個拷貝,改變它的值毫無意義

void exe(int *p, int *q);

int main()

return 0;

}void exe(int* p, int* q)

2樓:匿名使用者

#include

void exe(int** p, int** q);

void main()

int *p, *q, a, b;

scanf("%d %d", &a, &b);

p = &a;

q = &b;

if (a < b)

exe(&p, &q);

printf("a=%d,b=%d\n", a, b);

printf("max=%d,min=%d\n", *p, *q);

void exe(int** p, int** q)int* t;

t = *p;

*p = *q;

*q = t;

3樓:聽不清啊

#include

void exe(int *p,int *q);

main()

int *p,*q,a,b;

scanf("%d %d",&a,&b);

printf("a=%d,b=%d\n",a,b);

p = &a;

q = &b;

if(aexe(p,q);

printf("max=%d,min=%d\n",*p,*q);

void exe(int*p,int*q)int t;

t=*p;

*p=*q;

*q=t;

c語言 編一程式 交換兩個變數的值(用指標做函式引數)

4樓:匿名使用者

#include

void swap(int a,int b)int tmp = a;

a = b;

b = tmp;

printf("a=%d,b=%d\n",a,b);

int main()

int a = 5;

int b = 10;

printf("a=%d,b=%d\n",a,b);

swap(a,b);

printf("a=%d,b=%d\n",a,b);

return 0;

5樓:天雨下凡

#include

void swap(int *p,int *q);

int main(void)

void swap(int *p,int *q)

6樓:匿名使用者

#include

void swap(int *p, int *q)

int main()

c語言函式指標怎麼用?

7樓:長城知道

有函式: int fun(int a,int b);

要定義來指自向該函式的指標

對比指向 int a; 的指標

int *p; p = &a;

p的定義是怎麼來的?

首先要保證p是一個指標型別

寫下(*p),

然後,考慮下p的基型別,

p的基型別就是變數a的型別int

將int 放在(*p)前面就行了

int (*p);

括號可以省略,就成了 int *p;

同理想要實現 pf = &fun;

(*pf) 將pf定義為一個指標,

將fun的型別作為pf的基型別

fun相當於一個 int (int a,int b)型別的量int (int a,int b) (*pf);

基型別中有圓括號和中括號要後移

int (*pf)(int a,int b) ;//括號不能省略pf = &fun;

呼叫時(*pf)(3,4); pf(3,4)都可以

c語言中檔案指標能不能作為引數傳遞?

8樓:匿名使用者

1.指標完全可以作為函式的引數進行傳遞,其實在c中,陣列作為引數傳遞,跟指標作為引數傳遞都很類似的,指標傳的是該指標指向的地址,而陣列引數則是將該陣列的首地址傳遞過去。

2.檔案指標

在c語言中用一個指標變數指向一個檔案,這個指標稱為檔案指標。通過檔案指標就可對它所指的檔案進行各種操作。定義說明檔案指標的一般形式為:

file *指標變數識別符號;

其中file應為大寫,它實際上是由系統定義的一個結構,該結構中含有檔名、檔案狀態和檔案當前位置等資訊。在編寫源程式時不必關心file結構的細節。在使用檔案時,需要在記憶體中為其分配空間,用來存放檔案的基本資訊,給結構體型別是由系統定義的,c語言規定該型別為file型,其宣告如下:

typedef struct

file;

3.例如:

file *fp;

表示fp是指向file結構的指標變數,通過fp即可找存放某個檔案資訊的結構變數,然後按結構變數提供的資訊找到該檔案,實施對檔案的操作。習慣上也把fp稱為檔案指標。

9樓:匿名使用者

當然可以,檔案指標本質上就是一個結構體指標而已,當然可以做函式引數

10樓:

你要知道,所謂的指標也就是一個地址,一個數,一個2進位制碼

11樓:匿名使用者

file abc(flie *fp)?

//你這是函式名嗎?返回值型別沒有file型別,有file*

12樓:匿名使用者

當然可以,許多庫函式不都是需要檔案指標的嗎?如fread

c語言中,指標變數該如何使用呢?

13樓:xd小關

int _integer = 0;

int * _pinteger = &_integer; //&為求來

地址運算子, 指標用來儲存

源一些變數的bai地址

可以這樣訪du問(*_pinteger) 得到 _pinteger這個整形指標裡面的值

zhi0;

建議看dao

相關的書,難懂的東西才有意義

14樓:誰寂寞了誰的夜

所謂指標其實就是用來儲存地址的··就這樣想就好了··比如 int a,*p;p=&a;就是把變數a的地址內給它··容·就比如,你要進入a房間,有人告訴你a房間的鑰匙在b房間,你要去a房間,肯定要有鑰匙,所以你先去b房間拿鑰匙··其實指標變數就像b房間··

c語言中用一個函式指標作為另一個函式的引數,該怎麼解決

15樓:sshhff鳳

首先需要宣告函式指標的型別(下例子中的typedef int (*fpfunt)(int a,int b),再定義某個函式(下例中的add),在其引數列表中使用該函式指標型別,同時需要定義另一函式(下例中的fpadd,注意該函式形式要和fpfunt一致,本例子中是返回一個整數,兩個整型引數)作為實參用。這裡在手機上使用易歷知食軟體內的微c程式設計來程式設計,舉個兩個數相加的例子,**如下圖:

呼叫後執行結果如下圖:

16樓:茄子絕殺

在寫這個函式時輸入定義為引用,比如

void funcation(int &a);

// &a表示進來的是一個指標變數,指向一個int型變數//呼叫時寫:

int temp = 5;

int *p = &temp;

funcation(p);

17樓:匿名使用者

這個是指向函式的指標,屬於c的高階技術了,一般人不用掌握。

18樓:匿名使用者

首先還能輸指標是一個指標,這個指標指向的是一個函式,而你說這個函式指標又作為另一個函式的形參,那你形參執行這個函式的時候,就直接把這個函式指標作為整體代進去計算就是了,就相當於帶一個指標,因為函式指標它就是一個指標

19樓:匿名使用者

void func(int (*a)())

c語言指標變數問題

金色潛鳥 c 語言中,形式邏輯不成立,指標書寫的外形,在宣告中和在語句中,外貌相同,意思不同!int ptr 這是宣告,宣告 ptr 是指標,用於指向 int 型變數。語句中 ptr 表示 指標指向的數值,ptr 表示 指標指向的地址。有 的是值,沒星號的是地址。ptr int malloc num...

c語言中函式指標用法,C語言中函式指標用法

函式在記憶體中有一個物理位置,而這個位置是可以賦給一個指標的。一零點函式的地址就是該函式的入口點。因此,函式指標可被用來呼叫一個函式。函式的地址是用不帶任何括號或引數的函式名來得到的。這很類似於陣列地址的得到方法,即,在只有陣列名而無下標是就得到陣列地址。怎樣說明一個函式指標變數呢 為了說明一個變數...

c語言中指標變數怎麼理解?怎麼用

指標變數是一個變數,它儲存的是另一個變數的記憶體地址。你如果知道了這個指標變數儲存的值,就可以知道它所指向變數的記憶體地址,於是就可以間接訪問到那一個變數。定義 指標變數型別 指標變數名1,指標變數名2,例如 int main void 把指標作為函式的引數傳遞,可以使函式可以訪問函式外部的變數,例...