
----- C语言指针
谙忆
公众号:程序编程之旅。曾经写过C、C++,使用过Cocos2dx开发过游戏、安卓端、IOS端、PC端页面均开发过。目前专注Java开发,SaaS内核、元数据的研究。偶尔玩玩爬虫
-
原创 返回指针值的函数(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 *p2015-09-12 16:40:34658
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:321219
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(st2015-09-14 19:59:164205
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("\n2015-09-14 21:47:54604
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:11814
0
-
原创 指针数组和数组指针的详细解答
/**首先弄明白什么是指针数组,什么又是数组指针。 指针数组: 类型名 *数组名[数组长度] 如: int *p[8]; 因为优先级的关系,p先与[]结合,说明p是一个数组,然后再与*结合数组p 的元素是指向整型数据的指针。相当于定义了8个整型指针变量。在此,p就是 数组元素为指针的数组,本质为数组。 数组指针:2015-12-10 13:53:49702
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'; print2015-09-09 21:50:084960
0
-
原创 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:52752
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 ); int2015-09-10 14:34:22674
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:32867
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); int2015-09-10 15:04:09848
0
-
转载 指针变量的运算
指针变量的运算 指针变量可以进行某些运算,但其运算的种类是有限的。 它只能进行赋值运算和部分算术运算及关系运算。 1.指针运算符(1)取地址运算符& 取地址运算符&是单目运算符,其结合性为自右至左,其功能是取变量的地址。在scanf函数及前面介绍指针变量赋值中,我们已经了解并使用了&运算符。(2)取内容运算符* 取内容运算符是单目运算符,其结合性为自右至左,用来表示指针变量所指2015-08-24 10:42:471478
0