zoukankan      html  css  js  c++  java
  • C语言指针和数组的关系

    数组

    #include <stdio.h>
    main(){
           char c[6] = {'h','e','l','l','o',''};
           printf("第一个字符是%c
    在内存中的地址为%x
    ",c[0],&c[0]);
            printf("第二个字符是%c
    在内存中的地址为%x
    ",c[1],&c[1]);
             printf("第三个字符是%c
    在内存中的地址为%x
    ",c[2],&c[2]);
              printf("第四个字符是%c
    在内存中的地址为%x
    ",c[3],&c[3]);
               printf("第五个字符是%c
    在内存中的地址为%x
    ",c[4],&c[4]);
                printf("第六个字符是%c
    在内存中的地址为%x
    ",c[5],&c[5]);
                printf("数组的开始内存%x
    ",c);
                /*
                输出结果: 
                第一个字符是h
                在内存中的地址为28ff30
                第二个字符是e
                在内存中的地址为28ff31
                第三个字符是l
                在内存中的地址为28ff32
                第四个字符是l
                在内存中的地址为28ff33
                第五个字符是o
                在内存中的地址为28ff34
                第六个字符是
                在内存中的地址为28ff35
                数组的开始内存28ff30
                根据输出结果我们可以知道数组是一段连续的内存空间。
                数组名就是内存首地址 
                 数组名就是一个指针变量 
                */
                
                printf("用指针输出字符数组第一个%c
    ",*c);
                  printf("用指针输出字符数组第二个%c
    ",*(c+1));
                    printf("用指针输出字符数组第是三个%c
    ",*(c+2));
                    /*
                    用指针输出字符数组第一个h
                    用指针输出字符数组第二个e
                    用指针输出字符数组第是三个l
                    请按任意键继续. . .
                    
                    */
           system("pause");
           
           }

    是一段连续的内存空间。
                数组名就是内存首地址
                 数组名就是一个指针变量

  • 相关阅读:
    爆炸函数 explode
    创建 hive 用户自定义函数UDF,UDTF,UDAF
    数据仓库
    elasticsearch源码分析及插件开发
    JVM垃圾回收机制
    条件阻塞Condition的应用
    java 线上问题定位工具
    都是套路:高并发系统的降级特技
    java并发编程--Runnable Callable及Future
    什么是XSS攻击?什么是SQL注入攻击?什么是CSRF攻击?
  • 原文地址:https://www.cnblogs.com/84126858jmz/p/4984678.html
Copyright © 2011-2022 走看看