一种比较好的描述数组段的方法

说明:比如我要取用长度为32的一维数组,每次取8个(就是分别[0,7] [8,15] [16,23] [24,31]),记下来提醒一下自己。
代码可以这样实现:

for i in range(0,4) #(0,4是前开后闭)
start = (i*BATCH_SIZE) % 32
end = start + BATCH_SIZE #此处的BATCH_SIZE应该为7

然后[start , end]就会分别是[0,7] [8,15] [16,23] [24,31]

数组指针和指针数组是 C 语言中两种不同的概念。 1. 数组指针 数组指针是指一个指针,它指向一个数组。它本质上是一个指针变量,它存储着数组的首地址。我们可以使用数组指针来访问数组中的元素。 例如,下面的代码定义了一个整型数组 a 和一个指向整型数组的指针变量 p: ``` int a[5] = {1, 2, 3, 4, 5}; int (*p)[5] = &a; ``` 在这个例子中,p 是一个指向整型数组的指针变量。&a 是数组 a 的地址,即 a 的首地址。因为 a 是一个整型数组,所以它的类型为 int [5],因此 p 的类型为指向 int [5] 类型的指针,即 int (*)[5]。 我们可以通过 p 来访问数组 a 中的元素,例如: ``` printf("%d\n", (*p)[0]); // 输出 1 ``` 在这个例子中,(*p)[0] 表示数组 a 的第一个元素。 2. 指针数组 指针数组是指一个数组,其中每个元素都是一个指针。它本质上是一个数组,其中存储着多个指针变量。我们可以使用指针数组来存储多个指针,每个指针指向不同的内存地址。 例如,下面的代码定义了一个指针数组 p,其中每个元素都是一个指向整型变量的指针: ``` int a = 1, b = 2, c = 3; int *p[3] = {&a, &b, &c}; ``` 在这个例子中,p 是一个指针数组,其中每个元素都是一个指向整型变量的指针。&a、&b 和 &c 分别是变量 a、b 和 c 的地址,因此 p 的第一个元素指向变量 a,第二个元素指向变量 b,第三个元素指向变量 c。 我们可以通过指针数组来访问这些变量,例如: ``` printf("%d\n", *p[0]); // 输出 1 ``` 在这个例子中,*p[0] 表示指针数组 p 的第一个元素所指向的内存地址中存储的值,即变量 a 的值。 总的来说,数组指针和指针数组都是 C 语言中非常基础的概念,掌握它们对于理解指针和数组的使用非常重要。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值