当前位置:三九宝宝网 → 宝宝教育 → 教学论文 → 正文

c语言中指针变量怎么理解怎么用

更新:12-28 整理:39baobao.com
字体:

[用C语言编程时变量的幂怎么写的]long double _pow_i( long double _X, int _Y ) { if ( !_Y ) return 1; // 次幂为0的情况 if ( !(_Y-1) ) return _X; // 当_Y = 1的情况则返回结果_X return _X * _pow_i( _...+阅读

指针变量是一个变量,它保存的是另一个变量的内存地址。你如果知道了这个指针变量保存的值,就可以知道它所指向变量的内存地址,于是就可以间接访问到那一个变量。

定义:指针变量类型 *指针变量名1, *指针变量名2, ... ;

例如:

int main(void)

{

int *p; /*定义*/

int a;

p = &a; /*把a的地址赋值到p中*/

*p = 1; /*间接访问a*/

return 0;

}

把指针作为函数的参数传递,可以使函数可以访问函数外部的变量,例如:

void swap(int *a, int *b)

{

int c;

c = *a; *a = *b, *b = c;

}

指针也可以用于传递数组,数组名本身就是一个指针:

void func(int a[], int n)

{ ..... }

指针还可以指向指针,指向结构体(struct),指向数组

int **p; /*指向int指针*/

struct XXX *p;

int (*p)[100]; /*指向一个int[100]数组,括号不可少*/

本文地址:https://www.39baobao.com/show/29_16237.html

以上内容来自互联网,请自行判断内容的正确性。若本站收录的信息无意侵犯了贵司版权,请联系我们,我们会及时处理和回复,谢谢.

以下为关联文档:

C语言变量定义char int long有什么区别1、char 在所有机器上都是占一个字节,有符号数范围是-128到127,一般用来表示字符。字符在存储中就是存储的ascii值。 2、int 在16位机上占2字节,现在基本没有了。 在32|64位机...

二维数组指针 C语言编程 #include int main() { int a[2][5] = {{1,2,6,3,0},{10,20,40,60,80}}; int i,flag,order,value; while(scanf("%d",&order) == 1) { flag = 1; for(i = 0; i if(order == a...

C语言中函数指针用法在C语言中,指针被广泛使用,而函数指针是最为高级的用法之一,也是容易疑惑的地方之一。 看下面这段代码: #include <stdio.h> void F(int a, int* output) { printf("a = %d\n", a)...

C语言指针的用法#include<stdio.h> #include<math.h> #include <conio.h> void sort(char *a[],int n) { int i,j; char *temp; for(i=0;i<n;i++) for(j=i+1;j<n;j++) if(strcmp(a[i],a[j]<...

c语言指针用法int top 应不属于指针的范畴了,而是int的常用变量的定义,这个top要看是怎么用法,如果按照负数,0,正数来使用的话,可以判断它是用来做为这个类的一个特殊的定义标识; 如果这个变量是...

C语言指针递归调用怎么搞#include<stdio.h> int main() { void sort(int *p,int n); int i,n; int *p,num[20]; printf("input n\n"); scanf("%d",&n); printf("please input these numbers\n"); for(i=0;...

c语言指针合并两个升序数组还升序#include void merge(char *dest, char *src1, char *src2) { while (*src1 & *src2) { if (*src1 { *dest++ = *src1++; } else { *dest++ = *src2++; } } while(*src1) *d...

c语言中指针数组和字符串数组的区别高手请进!#include "stdio.h" #include "string.h" void shellsort(char v[][10], int n); void writeline(char linp[][10],int n); main() { char line[][10]={"C++","Fortran","Basic","Pasca...

C语言字符指针和字符数组的区别两个用法差不多,唯一的区别在于字符数组的值在程序运行过程中是可以修改的,但是字符指针的值在运行过程中是不能修改的。 #include using namespace std; int main() { char *...