zoukankan      html  css  js  c++  java
  • 数组

    数组名。

    1.数组名是一个指针常量

    2.两种情况数组名不用指针常量表示。

            sizeof +数组名 :返回数组的长度。不是指向数组的指针的长度。

            & +数组名:指向数组的指针。 不是指向某个指针常量的指针。

    3.赋值。

    	int a[10];
    	int b[10];
    	int *c;
    	c=&a[0];//指向数组第一个元素的指针。数组名本身的值。
    	c=a;//同上,数组名赋值的是一个指针的拷贝。而不是整个数组。
    
    	b=a;//非法。数组名不表示整个数组。必须使用循环赋值。
    
    	a=c;//非法。a是常量,不能修改。	

    下标引用

    1.下标引用和间接访问完全相同。

    /*下标引用*/
    	int array[10]={0,1,2,3,4,5,6,7,8,9};
    
    	int *ap = array +2;
    
    	printf("%d",ap[0]);//指针可以下标引用,与间接访问一样,对等的间接访问表达式为*(ap+0)
    
    	printf("%d",ap[-1]);//负值的下标引用,*(ap-1)
    
    	printf("%d
    ",ap[9]);//越界,但不提示错误。下标引用可以作用任意的指针,而不是数组名,所以编译器不会报错。
    
    	printf("%d",2[array]);//合法的,但是可读性差,*(2+array)
  • 相关阅读:
    HTML介绍
    python D41 前端初识
    mysql索引原理与查询优化
    python D41
    python D40 pymsql和navicat
    python D40 以及多表查询
    python D35 selectors模块
    python D35 I/O阻塞模型
    测试过程
    测试基础
  • 原文地址:https://www.cnblogs.com/lightmare/p/10398854.html
Copyright © 2011-2022 走看看