c入门小记

本文详细介绍了C语言中的指针与数组概念,包括如何声明整型变量、数组及指针,指针与数组之间的关系,以及指针运算与数组的关系等。此外还讲解了程序运行过程中内存的分配情况。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  1. int i = 0;声明一个int类型的值
  2. int a [5] = {1,2,3,4,5};声明一个数组.
  3. int* p = &a; 声明一个指针指向地址.
  4. a == &a == &a[0] 这里&为取地址, a本身表示的就是数组的地址.数组地址指向数组的首值地址.
  5. *p==a[0] *p表示取地址中值,因为int* p = &a(这里的星和*p不一样,这里表示"声明类型",*p表示"取值"), 而a地址又为首项地址,所以取值后为首项值.
  6. *(p+1) == a[1] 数组中的次项地址为首项地址加一, 取首项+1的值就为取次项的值.
  7. 指针就是门牌号, 门牌号做乘除是没有意义的,只能做加减.
    指针的运算一般和数组相关,因为数组是一块连续的内存空间, 不连续的内存空间做加减也是没有意义的.
  8. 程序的运行过程: 硬盘加载到内存中被CPU执行.
  9. 内存分区: data(存放一些常量), code(存放方法,代码), heap(堆,不连续的内存区域malloc方法分配的内存在此区域), stack(栈,连续的内存区域,系统分配的内存在此区域)
  10. 动态分配内存

                                image

转载于:https://www.cnblogs.com/olvo/archive/2012/04/29/2476269.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值