这段代码将计算 p1 和 p2 指向的元素在数组中的距离,结果为 6。
指针与函数
指针可以作为函数的参数和返回值,当指针作为函数参数时,可以实现通过函数修改实参的值。
#include "stdio.h"void change_value(int *p){ *p = 10;}int main(){ int a = 5; change_value(&a); printf("%d
",a); return 0;}
运行结果为:10
当函数需要返回多个值时,可以使用指针作为函数的返回值。
#include "stdio.h"int *find_max(int *arr, int len){ int *p = arr; int max = *p; for(int i=1;i<len;i++){ if(*(p+i)>max){ max = *(p+i); p = p+i; } } return p;}int main(){ int arr[5] = {1,3,7,5,9}; int *p = find_max(arr,5); printf("Max is %d at position %ld
",*p,p arr); return 0;}
运行结果为:Max is 9 at position 4
可以看到,这个程序找到了数组中的最大值,并返回了最大值的位置。
指针的类型和指针所指向的类型
在 C 语言中,指针本身有类型,指针所指向的对象也有类型,指针的类型描述了指针本身的属性,而指针所指向的类型描述了指针可以操作的内存区域的数据类型。
int *p; /* 指针的类型是 int*,指针所指向的类型是 int */
char **q; /* 指针的类型是 char**,指针所指向的类型是 char* */
理解这两个概念非常重要,因为它们决定了对指针的操作方式。
int *p; /* 指针的类型是 int*,指针所指向的类型是 int */
char **q; /* 指针的类型是 char**,指针所指向的类型是 char* */
理解这两个概念非常重要,因为它们决定了对指针的操作方式。
int *p;/* 指针的类型是 int*,指针所指向的类型是 int */
char **q;/* 指针的类型是 char**,指针所指向的类型是 char* */
理解这两个概念非常重要,因为它们决定了对指针的操作方式。
int *p; /* 指针的类型是 int*,指针所指向的类型是 int */
char **q; /* 指针的类型是 char**,指针所指向的类型是 char* */
理解这两个概念非常重要,因为它们决定了对指针的操作方式。
int *p; /* 指针的类型是 int*,指针所指向的类型是 int */
char **q; /* 指针的类型是 char**,指针所指向的类型是 char* */
理解这两个概念非常重要,因为它们决定了对指针的操作方式。
int *p; /* 指针的类型是 int*,指针所指向的类型是 int */
char **q; /* 指针的类型是 char**,指针所指向的类型是 char* */
理解这两个概念非常重要,因为它们决定了对指针的操作方式。
int *p; /* 指针的类型是 int*,指针所指向的类型是 int */
char **q; /* 指针的类型是 char**,指针所指向的类型是 char* */
理解这两个概念非常重要,因为它们决定了对指针的操作方式。
int *p; /* 指针的类型是 int*,指针所指向的类型是 int */
char **q; /* 指针的类型是 char**,指针所指向的类型是 char* */
理解这两个概念非常重要,因为它们决定了对指针的操作方式。
int *p; /* 指针的类型是 int*,指针所指向的类型是 int */
char **q; /* 指针的类型是 char**,指针所指向的类型是 char* */
理解这两个概念非常重要,因为它们决定了对指针的操作方式。
int *p; /* 指针的类型是 int*,指针所指向的类型是 int */
char **q; /* 指针的类型是 char**,指针所指向的类型是 char* */
理解这两个概念非常重要,因为它们决定了对指针的操作方式。
int *p; /* 指针的类型是 int*,指针所指向的类型是 int */
char **q; /* 指针的类型是 char**,指针所指向的类型是 char* */
理解这两个概念非常重要,因为它们决定了对指针的操作方式。
int *p; /* 指针的类型是 int*,指针所指向的类型是 int */
char **q; /* 指针的类型是 char**,指针所指向的类型是 char* */
理解这两个概念非常重要,因为它们决定了对指针的操作方式。
int *p; /* 指针的类型是 int*,指针所指向的类型是 int */
char **q; /* 指针的类型是 char**,指针所指向的类型是 char* */
理解这两个概念非常重要,因为它们决定了对指针的操作方式。
int *p; /* 指针的类型是 int*,指针所指向的类型是 int */
char **q; /* 指针的类型是 char**,指针所指向的类型是 char* */
理解这两个概念非常重要,因为它们决定了对指针的操作方式。
int *p; /* 指针的类型是 int*,指针所指向的类型是 int */
char **q; /* 指针的类型是 char**,指针所指向的类型是 char* */
理解这两个概念非常重要,因为它们决定了对指针的操作方式。
int *p; /* 指针的类型是 int*,指针所指向的类型是 int */
char **q; /* 指针的类型是 char**,指针所指向的类型是 char* */
理解这两个概念非常重要,因为它们决定了对指针的操作方式。
int *p; /* 指针的类型是 int*,指针所指向的类型是 int */
char **q; /* 指针的类型是 char**,指针所指向的类型是 char* */
理解这两个概念非常重要,因为它们决定了对指针的操作方式。
int *p; /* 指针的类型是 int*,指针所指向的类型是 int */
char **q; /* 指针的类型是 char**,指针所指向的类型是 char* */
理解这两个概念非常重要,因为它们决定了对指针的操作方式。
int *p; /* 指针的类型是 int*,指针所指向的类型是 int */
char **q; /* 指针的类型是 char**,指针所指向的类型是 char* */
理解这两个概念非常重要,因为它们决定了对指针的操作方式。
int *p; /* 指针的类型是 int*,指针所指向的类型是 int */
char **q; /* 指针的类型是 char**,指针所指向的类型是 char* */
理解这两个概念非常重要,因为它们决定了对指针的操作方式。
int *p; /* 指针的类型是 int*,指针所指向的类型是 int */
char **q; /* 指针的类型是 char**,指针所指向的类型是 char* */
理解这两个概念非常重要,因为它们决定了对指针的操作方式。
int *p; /* 指针的类型是 int*,指针所指向的类型是 int */
char **q; /* 指针的类型是 char**,指针所指向的类型是 char* */
理解这两个概念非常重要,因为它们决定了对指针的操作方式。
int *p; /* 指针的类型是 int*,指针所指向的类型是 int */
char **q; /* 指针的类型是 char**,指针所指向的类型是 char* */
理解这两个概念非常重要,因为它们决定了对指针的操作方式。
int *p; /* 指针的类型是 int*,指针所指向的类型是 int */
char **q; /* 指针的类型是 char**,指针所指向的类型是 char* */
理解这两个概念非常重要,因为它们决定了对指针的操作方式。
int *p; /* 指针的类型是 int*,指针所指向的类型是 int */
char **q; /* 指针的类型是 char**,指针所指向的类型是 char* */
理解这两个概念非常重要,因为它们决定了对指针的操作方式。
int *p; /* 指针的类型是 int*,指针所指向的类型是 int */
char **q; /* 指针的类型是 char**,指针所指向的类型是 char* */
理解这两个概念非常重要,因为它们决定了对指针的操作方式。
int *p; /* 指针的类型是 int*,指针所指向的类型是 int */
char **q; /* 指针的类型是 char**,指针所指向的类型是 char* */
理解这两个概念非常重要,因为它们决定了对指针的操作方式。
int *p; /* 指针的类型是 int*,指针所指向的类型是 int */
char **q; /* 指针的类型是 char**,指针所指向的类型是 char* */
理解这两个概念非常重要,因为它们决定了对指针的操作方式。
int *p; /* 指针的类型是 int*,指针所指向的类型是 int */
char **q; /* 针
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/785744.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复