[]数组_函数调用数组 、指针数组、结构体数组
来源:互联网 发布:新媒体网络部面试问题 编辑:程序博客网 时间:2024/05/17 21:43
话不多说,上代码
函数调用数组 (数组*函数)
#include<stdio.h>void main(){void f1(int a);//【声明void f2(int x[]);int a[10] = { 0,1,2,3,4,5,6,7,8,9 };f1(a[9]);//函数【调用数组元素f2(a);//函数【调用数组(数组名存的就是数组首地址)}void f1(int a)//就像调用一个变量一样【数组元素在此就是单个变量{printf("%d\n", a);}void f2(int x[])//调用一个地址(所以函数内对数组做的改变全是真实改动){printf("%d\n", x[9]);}
请注意其对应的:声明、定义、调用。的区别!
调用数组只需传入数组名(数组首地址)即可。
而调用数组元素则是采用"值传递"那样的方式,就像调用一个不是数组的变量一样。
声明、定义 中做参数【都是函数首部】
void f2(int x[]);//声明
void f2(int x[])//定义{printf("%d\n", x[9]);}
调用 中做参数【直接是数组名(首地址)】
f2(a);//调用(a是数组a[100]的数组名)
指针数组(数组*指针)
#include<stdio.h>void main(){int i = 0;char *p[4];//int (*p)[4]则是指向一维数组的指针变量p[0] = "hello";//指针能直接指向字符串并且赋值,比字符数组好用多了(这首指针p[0],是一个指针变量)p[1] = "world";p[2] = "!";p[3] = "\1";while(p[i]!="\1")//字符串就是地址?详见另一文章{printf("%s\n",p[i]);//此处记住,输出的参数是字符串的地址i++;}}
结构体数组(数组*结构体)
#include<stdio.h>#include<string.h>struct Man {int num;char name[20];}Student[3];void main(){for (int i = 0; i < 3; i++){Student[i].num = i;strcpy(Student[i].name, "zhang");//还不能直接用等号= =。。。printf("学生%d %s\n", Student[i].num , Student[i].name);}}
0 0
- []数组_函数调用数组 、指针数组、结构体数组
- 指针结构体_数组指针结构体_指针数组结构
- 48_结构体指针数组
- hdu_4350_数组模拟_函数调用数组
- 结构体数组指针
- 结构体指针数组
- *指针_函数指针、指针控制数组、链表(结构体指针)
- C++引用数组,函数指针,函数指针数组,结构体数组等学习
- 指针与函数_函数指针数组
- C语言_函数指针数组指针
- 数组--结构体数组
- 结构体数组_示例
- 46_结构体数组
- 指针,指针数组,数组指针,函数指针
- 41_指针数组
- 指针与数组_数组指针
- 数组、结构体、指针1
- 数组、结构体、指针2
- 进程间通信-共享内存实例
- 装饰者模式小结
- LINUX系统的VPS里挂载第二个硬盘且重装系统数据也不会丢失
- AndroidStudio链接不上Genymotion模拟器,adb启动失败的解决方法
- inline函数
- []数组_函数调用数组 、指针数组、结构体数组
- java基础改学C++(七)结构体、共用体、枚举、类
- 错误:在查找预编译头时遇到意外的文件结尾。是否忘记了向源中添加"#include"stdafx.h""
- UNet系统初次使用——联网Boxing游戏(4)
- 项目进度(四)
- 个人了解的一些Android网络通信框架的介绍
- 错误:“无法定位程序输入点xxx.dll于动态链接库上”
- ZUFE 1120 trs滑雪【记忆化搜索】
- Deep Learning学习 之 CNN代码解析(MATLAB)