当前位置: 首页 > news >正文

南昌网站外包网站建设合同的内容与结构

南昌网站外包,网站建设合同的内容与结构,深圳家居网站建设公司排名,企业做网站有什么好处坏处答案:不一样。 哪里不同? 数组名:数组名的值是一个指针常量,也就是数组第一个元素的地址。 它的类型取决于数组元素的类型:如果他们是int类型,那么数组名的类型就是“指向int的常量指针”;如果…

答案:不一样。


哪里不同?

数组名:数组名的值是一个指针常量,也就是数组第一个元素的地址

它的类型取决于数组元素的类型:如果他们是int类型,那么数组名的类型就是“指向int的常量指针”;如果它们是其他类型,那么数组名的类型也就是“指向其他类型的常量指针”。

总结1:数组名是一个指针常量,不可简单的认为是个指针。它始终指向第一个元素的地址。


那么数组在什么情况下不能作为指针常量呢?

在以下两种场景下:

  • 当数组名作为 sizeof操作符 的操作数的时候,此时sizeof返回的是整个数组的长度,而不是指针数组指针的长度。
  • 当数组名作为 &操作符 的操作数的时候,此时返回的是一个指向数组的指针而不是指向某个数组元素的指针常量

!除了以上两点之外,数据名在其他任何情况下都是指向首元素的指针

更进一步解释:

    指针和数组并不是相等的。为了说明这个概念,请考虑下面两个声明:    

int a[10];
int *b;
  • 声明一个数组时,编译器根据声明所指定的元素数量为数组分配内存空间,然后再创建数组名指向这段空间的起始位置
  • 声明一个指针变量的时候,编译器只为指针本身分配内存空间,并不为任何整型值分配内存空间,指针并未初始化指向任何现有的内存空间

因此,表达式*a是完全合法的,但是表达式*b却是非法的。*b将访问内存中一个不确定的位置,将会导致程序终止。

  • 另一方面b++可以通过编译,a++却不行,因为a是一个常量值。

 

void test01()
{int arr[] = { 1, 2, 3, 4 };//1. sizeof  2.对数组名取地址&arr//以上两种情况下,数组名不是指向首元素的指针//以上两种请款下,数组名是数组类型//!除了以上两点之外,数据名在其他任何情况下都是指向首元素的指针//sizeof 可以不加括号,它是c语言关键字printf("sizeof arr:%d\n", sizeof arr);printf("&arr addr : %d\n", &arr);printf("&arr + 1 addr : %d\n", &arr + 1);   // 数组指针类型:地址直接加了一个数组的长度16字节。相当于类型+1。int *p = arr;//数组名是一个常量指针//arr = NULL;//数组下标能否是负数?//可以是负数p += 3;printf("p[-1]:%d\n", p[-1]);//他们等价printf("p[-1]:%d\n", *(p - 1));//数组指针类型和数组首元素指针类型}
//如何定义一个可以指向数组的指针
void test02()
{int arr[5] = { 1, 2, 3, 4, 5 };//1. 我们先定义数组类型,再定义数组指针类型typedef int(ARRAY_TYPE)[5];  //typedef unsigned int u32ARRAY_TYPE myarray; // int myarray[5];//for (int i = 0; i < 5; ++i){myarray[i] = 100 + i;}for (int i = 0; i < 5; ++i){printf("%d " ,myarray[i]);}//对数组名取地址代表指向整个数组的指针ARRAY_TYPE *pArray = &myarray;pArray = &arr;//1. *pArray 表示拿到pArray指针指向的整个数组//2. *pArray类型就是数组名,指向首元素类型的指针printf("\n*(*pArray + 1) : %d\n", *(*pArray + 1));//2. 直接定义数组指针类型typedef int(*ARRAY_POINTER)[5];ARRAY_POINTER pArr = &arr;//3. 直接定义数组指针变量int(*pArrParam)[5] = &arr;}

http://www.yayakq.cn/news/548665/

相关文章:

  • 个人主页网站制作免费jiasale wordpress
  • 学做网站要什么学历成都建工雅安建设有限责任公司网站
  • 免费数据库网站wordpress设置多语言
  • 理性仁网站如何做估值分析泰安网站seo
  • 江门移动网站建设报价汕头网页搜索排名提升
  • 网站如何做电脑和手机软件有没有专门做特产的网站
  • 给别人做违法网站网站的服务器选择
  • 北京php网站开发新郑市网站建设定制开发
  • 网站建设与管理专业学什么网站文字很少怎么做优化
  • 河南平台网站建设哪里有广州专业做外贸网站建设
  • 做旅游攻略网站社交媒体营销策略有哪些
  • 马鞍山网站建设推广有平面广告设计的网站
  • 网站制作 台州分销平台合生元
  • 做网站要多少钱新乡收费电影网站怎么做
  • 如何做免费网站网站之间的区别
  • 北京网站制作 建设推广东莞代理公司注册
  • 宁波搭建网站公司高能建站
  • 上海材料网站建设江苏网站建设系统方案
  • 手游网站建设的宗旨施工企业2024年市场开发工作思路
  • 网站设计站点管理本机做网站
  • 西安网站建设首选网站生鲜建设市场分析
  • 百度回收网站搭建长沙本土网站建设公司
  • 网站空间安装长沙做网站多少钱
  • 温州阀门网站建设微营销平台系统
  • 河南网站建设找哪家crm系统免费
  • 领航 网站设计山东企业
  • 温州城市建设投资集团网站vk社交网站做婚介
  • 网站建设的落地页个人网站论文设计内容简介
  • 贵州城乡建设网站厂房设计装修公司
  • 建一个商城网站需要多少钱湖北建设局网站首页