全站数据
8 4 2 0 5 8 1

C语言中*a是什么意思啊

关于历史文化的学习 | 简单学习,快乐成才!         
问题更新日期:2024-10-28 04:54:22

问题描述

C语言中*a是什么意思啊急求答案,帮忙回答下
精选答案
最佳答案

1. 定义数组 int a[10] a既是数组的名字,也是数组的地址,相当与从a这个地址连续分配了10个int内存地址

2.我们可以设定指针 int *p; //*p是int类型变量,p是指向int变量的指针 p = &a[10] // 将数组的地址赋值给p指针

3.很多人喜欢写成 int *p = &a[10]; //这个语句经常困扰人,可以拆分为 int *p; p = & a[10];

4.我们知道a是数组的地址,同时也是数组内第一个元素的地址,所以 int *p; p = &a[10] = a; 也就是说a其实就是地址,*a就是指向了数组中的地一个元素,如果你要只想数组中的第i个元素可以写成 *(a+i); 其实*(a+i)==a[i] *a == a[0]

5. 函数声明 void add(char a[ ]);和 void add(char *a);其实是一样的 因为在编译的时候都是讲数组的地址(就是数组收元素的地址)传递过去

6. 所以在用到数组的时候你只需要数组的第一个元素的地址(也就是函数名)就可以了 int a[]; int *a; char a[]; char * a;

随机推荐