| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3467 人关注过本帖
标题:关于指向数组的指针初始化的问题,谢谢帮忙
取消只看楼主 加入收藏
xxwpk007
Rank: 4
等 级:业余侠客
帖 子:166
专家分:289
注 册:2007-7-29
结帖率:100%
收藏
 问题点数:0 回复次数:2 
关于指向数组的指针初始化的问题,谢谢帮忙
VC++6.0下编译

#include <stdio.h>
int main(void)
{
    int (*fp)[10];
    int num[10];
    fp = num;//这里错在哪呢?
    return 0;
}

编译器提示:

--------------------Configuration: Cpp2 - Win32 Debug--------------------
Compiling...
Cpp2.cpp
D:\c\Cpp2.cpp(6) : error C2440: '=' : cannot convert from 'int [10]' to 'int (*)[10]'
        Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
执行 cl.exe 时出错.

Cpp2.obj - 1 error(s), 0 warning(s)
搜索更多相关主题的帖子: 指针 
2008-07-08 10:42
xxwpk007
Rank: 4
等 级:业余侠客
帖 子:166
专家分:289
注 册:2007-7-29
收藏
得分:0 
[bo][un]界水乘风[/un] 在 2008-7-8 10:47 的发言:[/bo]

To 1#
虽然num,&num可能在数值上没什么区别,不过语法通不过的。
改成 fp = &num;

To 2#,
你哪里看出来的这是VC?就因为是用VC6编译的?



#include <stdio.h>
int main(void)
{
    int i;
         int (*fp)[10];
         int num[10];
    fp = &num
    for(i = 0;i < 10;i++)
        num[i] = i;
    for(i = 0;i <10;i++)
        printf("%d ",num[i]);
    printf("\n");
    for(i = 0;i <10;i++)
        printf("%d ",fp[i]);
         return 0;
}
改成 fp = &num;后出现奇怪的数据
图片附件: 游客没有浏览图片的权限,请 登录注册


[[it] 本帖最后由 xxwpk007 于 2008-7-8 10:58 编辑 [/it]]
2008-07-08 10:57
xxwpk007
Rank: 4
等 级:业余侠客
帖 子:166
专家分:289
注 册:2007-7-29
收藏
得分:0 
谢谢,LS的回答 现在终于搞懂了
2008-07-09 09:01
快速回复:关于指向数组的指针初始化的问题,谢谢帮忙
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017875 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved