本帖最后由 allan1234569 于 2014-09-05 14:22:48 编辑

解决方案 »

  1.   

    int array[10] = {0,1,2,3,4,5,6,7,8,9};
    int  *p;
    p = &array[0];
    for(int i = 0; i < 10; i++)
        cout << *p++ << '-';
      

  2.   

    int (*p)[10]; 很没有必要。
    其实你用指针的思路只需要将array数组的首地址保存到一个指针都可以索引出数组的值了,代码如下: int array[10] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };
    int *p = nullptr;
    p = array;
    for (int i = 0; i < 10; i++)
    cout << *p++ << '-';当然如果你非要定义一个指向数组的指针,那你要注意你这个指针+1意味着内存地址增加了4*10个字节,正确的用法是: int array[10] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };
    int (*p)[10];
    p = &array;
    for (int i = 0; i < 10; i++)
    cout << (*p)[i] << '-';