我搜索了我的问题,但没有找到它。指针阵列上的指针
我有一个指针阵列的声明
int *Blocks[] = {Block1,Block2,Block3,Block4};
块是具有50
长度阵列现在我有一个for循环中,我想一步一步初始化的字段
for(int i=0;i<50;++i)
{
*(Blocks[section])+i = 1;
}
之后应该是一个变量。 它是正确的或什么是正确的表达式来获得所选部分的数组字段?
感谢每一个回答
我搜索了我的问题,但没有找到它。指针阵列上的指针
我有一个指针阵列的声明
int *Blocks[] = {Block1,Block2,Block3,Block4};
块是具有50
长度阵列现在我有一个for循环中,我想一步一步初始化的字段
for(int i=0;i<50;++i)
{
*(Blocks[section])+i = 1;
}
之后应该是一个变量。 它是正确的或什么是正确的表达式来获得所选部分的数组字段?
感谢每一个回答
不,那条线不太对。以下是(注意括号中的位置):
*(Blocks[section]+i) = 1;
,或等效但更简洁:
Blocks[section][i] = 1;
你写的差不多的作品,你可以这样做:
*(Blocks[section] + i) = 1;
但最好的解决办法是使用C的语法糖并编写:
Blocks[section][i] = 1;
你可以通过设置初始化该领域
*(Blocks[section]+i) = 1;
,也许你之前初始化块
谢谢你都应该malloc的内存不足!块[section] [i] = 1;是我所寻找的 – fnobbi 2012-01-18 07:56:51