----- C语言指针
谙忆
Java相关研发架构工作经验5年。拥有Java相关发明专利8余项。从事过支付行业,研发与架构的系统稳定地支撑着公司日千万交易笔数量级的支付和对账。
二手车SaaS内核研发3年经验+,拥有二手车行业SaaS相关发明专利6项,研发、架构的元数据内核与权限系统,每日亿万级接口调用。
Java企业开发丰富的理论知识和实战经验。2020年CSDN博客之星第12名,同时在一些社区担任名誉职位。认证为CSDN博客专家、CSDN专栏签约作者、InfoQ签约作者、阿里云ACE杭州同城会会长、阿里云社区认证专家、华为云·云享专家。
展开
-
返回指针值的函数(1)
/**有a个学生,每个学生有b门课程的成绩。要求在用户输入学生序号以后,**/#include <stdio.h>#include <stdlib.h>int main(){ float *aa(int (*p)[4],int n); float a[3][4]={{50,99,80,50},{55,60,85,90},{10,54,74,26}}; float *p原创 2015-09-12 16:40:34 · 1523 阅读 · 0 评论 -
用指针方法排序数组
#include <stdio.h>#include <stdlib.h>//将一维数组中10个数按大到小的顺序排列输出int main(){ void sort(int x[],int n); //void sort(int *x,int n) int i,x[10]; int *p; p=x; for(i=0;i<10;i++)原创 2015-09-09 18:26:32 · 2065 阅读 · 0 评论 -
将若干字符串按字母顺序(由小到大)输出(用指针)
#include <stdio.h>#include <stdlib.h>#include <string.h>void sortt(char *name[],int n){ int i,j; char *temp; for(i=0;i<5;i++) { for(j=i+1;j<5;j++) { if(st原创 2015-09-14 19:59:16 · 6020 阅读 · 0 评论 -
指针部分,建立动态数组
#include <stdio.h>#include <stdlib.h>void check(int *p[]){ int i; printf("没及格的成绩有:\n"); for(i=0;i<5;i++) { if(p[i]<60) printf("%d ",p[i]); } printf("\n原创 2015-09-14 21:47:54 · 1393 阅读 · 0 评论 -
a为整型数组,&a+1的含义
#include <stdio.h>int main(){ int a[10]; printf("a的值为:\t%d\n",a); printf("&a的值为:\t%d\n",&a); printf("a+1的值为:\t%d\n",a+1); printf("&a+1的值为:\t%d\n",&a+1); /**把int a[10]变下形,为:int *原创 2015-12-10 13:52:11 · 1977 阅读 · 0 评论 -
指针数组和数组指针的详细解答
/**首先弄明白什么是指针数组,什么又是数组指针。 指针数组: 类型名 *数组名[数组长度] 如: int *p[8]; 因为优先级的关系,p先与[]结合,说明p是一个数组,然后再与*结合数组p 的元素是指向整型数据的指针。相当于定义了8个整型指针变量。在此,p就是 数组元素为指针的数组,本质为数组。 数组指针:原创 2015-12-10 13:53:49 · 1700 阅读 · 0 评论 -
用指针将字符串a的内容复制到字符串b
#include <stdio.h>#include <stdlib.h>/**int main(){ char a[]="i love you very mach!",b[100]; int i; for(i=0;*(a+i)!='\0';i++) { *(b+i)=*(a+i); } *(b+i)='\0'; print原创 2015-09-09 21:50:08 · 6572 阅读 · 1 评论 -
int(*p)[4] int*p[4]
1、int(*p)[4];------p为指向含4个元素的一维整形数组的指针变量(是指针)#include <stdio.h>#include <stdlib.h>int main(){ int a[4]={1,2,3,4}; int (*p)[4]; p=&a; printf("%d\n",(*p)[3]); printf("%d\n",*p);原创 2015-09-10 13:33:52 · 1745 阅读 · 0 评论 -
使用指向函数的指针
/**输入2个整数,然后让用户选择1或2,选1时调用max函数,输出2者中的大数,选2时调用min函数,输出2者中的小数**/#include <stdio.h>#include <stdlib.h>int main(){ int max(int x,int y); int min(int x,int y); int (*p)(int ,int ); int原创 2015-09-10 14:34:22 · 1364 阅读 · 0 评论 -
返回指针值的函数(2)
请自己理解,比较简单/**对前面那个问题,输出有不及格成绩的学生的所有成绩**/#include <stdio.h>#include <stdlib.h>int main(){ float a[3][4]={{50,99,80,50},{55,60,85,90},{10,54,74,26}}; float *p; float *aa(float (*pt)[4]);原创 2015-09-12 17:00:32 · 1693 阅读 · 0 评论 -
用指向函数的指针作函数参数
/**有2个整数a,b,有用户输入1,2,或3,如输入1,程序就给出a和b中大者,输入2,就给出a和b中小者,输入3,就给出a和b的和**/#include <stdio.h>#include <stdlib.h>int main(){ int f(int x,int y,int (*p)(int ,int )); int max(int x,int y); int原创 2015-09-10 15:04:09 · 1646 阅读 · 0 评论 -
指针变量的运算
指针变量的运算 指针变量可以进行某些运算,但其运算的种类是有限的。 它只能进行赋值运算和部分算术运算及关系运算。 1.指针运算符(1)取地址运算符& 取地址运算符&是单目运算符,其结合性为自右至左,其功能是取变量的地址。在scanf函数及前面介绍指针变量赋值中,我们已经了解并使用了&运算符。(2)取内容运算符* 取内容运算符是单目运算符,其结合性为自右至左,用来表示指针变量所指转载 2015-08-24 10:42:47 · 1903 阅读 · 0 评论