hubukaixuan 发表于 2012-8-1 09:13:37

请教大虾们一个问题,就是关于指针与数组的,详细见帖

大侠好,
想请教一下,下面的问题
在DSP里面,一位前面的程序员是这样写的。

unsigned long*oox= (unsigned long*)3500;
unsigned int *x=(unsigned int*)3500;

我想请问一下,他这里定义的意思是不是和下面的意思定义一样
unsignedlong oox={0};
unsignedint    x={0};

谢谢。

lcw_swust 发表于 2012-8-1 09:49:14

不一样,上面是定义指针,指向地址3500;
下面是定义数组,数组里有3500个元素,但是数组的地址是不确定的。

lusson 发表于 2012-8-1 09:54:57

(unsigned long*)是强制指针类型转换,即表示3500为地址,
防止编绎器WARNING

llj1007 发表于 2012-8-1 11:50:40

学习了   我也是2楼那么理解的

hubukaixuan 发表于 2012-8-1 15:32:22

后来他就是当成数组使用了。
for(i=0;i<1000;i++)
{
    ooy=ooy*100/32;
    x=(unsigned int)(oox*100/32);
}
那这时候的数组就是就是在原来的地址上面使用相同的宽度的各个数组成员吧。
如果这样是连续的话,就你访问数组一样吧。
页: [1]
查看完整版本: 请教大虾们一个问题,就是关于指针与数组的,详细见帖