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 把指標作為函式的引數傳遞,可以使函式可以訪問函式外部的變數,例...