考试网 >> IT认证 >> 等级 >> 等级动态 >> C语言中数组和指针的互操作

C语言中数组和指针的互操作

发布时间:2006-07-25 12:02     点击:
分页:上一页  1 [2] 

   

  char *hello = "Hello, world";或者char hello[] = "Hello, world"; 切换为字符指针数组,其效果是一样的);数槌跏蓟氖焙蚧箍?nbsp;以不标明最大小,即 

  char hello[] = {’H’,’e’,’l’,’l’,’o’,’,’,’ ’,’w’,’o’,’r’,’l’,’d’,’\0’};,这时候编译器会根据后边的赋值情况为数组分配合适的内存空间,这个你不用担忧,除非机器正处于内存缺状态。 

  数组元素的访问: 

  可以利用循环结构来挨个访问数组的元素,比如: 

   

  [...] 

  int i; 

  char hello[12] = {’H’,’e’,’l’,’l’,’o’,’,’,’ ’,’w’,’o’,’r’,’l’,’d’,’\0’}; 

  [...] 

  for(i = 0; i < 12; i++){ 

   

  printf("%c",hello[i]); 

  } 

  printf("\n"); 

  [...] 

  其中有一点必须注意了,那就是i的值不能取到12,因为我们的下标识从0开始的,即hello[0]是第一个元素,数组的下界,而hello[12]是第一个空元素,数组的上界。其实,数组元素的个数等于定义时的下标,也等于数组的上界(12)减去下界(0)得到的数值,还等于上界地址减去下界地址模sizeof(tyep_specifier)的值(假设数组空间是连续分布的,如果不是这样那么这种方法也就不成立了)。 
分页:上一页  1 [2] 
版权申明:未经书面授权请勿转载本站信息!!作品版权归所属媒体与作者所有!!
发表评论: 匿名发表 用户名: 查看评论
您将承担一切因您的行为、言论而直接或间接导致的民事或刑事法律责任
留言板管理人员有权保留或删除其管辖留言中的任意内容
本站提醒:不要进行人身攻击。谢谢配合。
在本站搜索相关信息
2003-2005 Ksw123.com All Rights Reserved. - TOP
Copyright © 2006 Ksw123.com. All rights reserved.中国考题网 版权所有