| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1180 人关注过本帖
标题:关于指针数组不能引用,求助
只看楼主 加入收藏
q1826050194
Rank: 2
等 级:论坛游民
帖 子:67
专家分:19
注 册:2011-3-7
结帖率:77.78%
收藏
已结贴  问题点数:15 回复次数:21 
关于指针数组不能引用,求助
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#include<string.h>
typedef struct
{
    char suit[10];
    char face[10];
}change;
change card[52];
char *face[]={"1","2","3","4","5","6","7","8","9","10","jack","queen","king"};
char *suit[]={"spade","hearts","clubs","diamonds"};

void start(change card[],char face[],char suit[])
{
    int a,b,c;
for(a=0;a<52;a++)
{
    int a;
    strcpy(card[a].face,face[a%13]);
    strcpy(card[a].suit,suit[a/13]);
}


int main()
{
    start(card,face,suit);
    return 0;
}


我用c-free编译器的: 它出现以下的东西  --------------------配置: mingw5 - CUI Release, 编译器类型: MinGW--------------------

检查文件依赖性...
正在编译 C:\Users\Administrator\Desktop\发牌模拟.c...
[Warning] C:\Users\Administrator\Desktop\发牌模拟.c:20: warning: passing arg 2 of `strcpy' makes pointer from integer without a cast
[Warning] C:\Users\Administrator\Desktop\发牌模拟.c:21: warning: passing arg 2 of `strcpy' makes pointer from integer without a cast
[Error] C:\Users\Administrator\Desktop\发牌模拟.c:29: error: syntax error at end of input

构建中止 发牌模拟: 1 个错误, 2 个警告

求帮助
搜索更多相关主题的帖子: change 
2011-03-22 23:29
q1826050194
Rank: 2
等 级:论坛游民
帖 子:67
专家分:19
注 册:2011-3-7
收藏
得分:0 
没有人能帮助吗?
2011-03-23 06:51
zanzan1986
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:100
专家分:140
注 册:2011-2-22
收藏
得分:0 
那个发黑红梅方应该不要余十三吧!是余四吧!不然越界了!
2011-03-23 07:47
zanzan1986
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:100
专家分:140
注 册:2011-2-22
收藏
得分:0 
开始函数还少个“}”
2011-03-23 07:52
q1826050194
Rank: 2
等 级:论坛游民
帖 子:67
专家分:19
注 册:2011-3-7
收藏
得分:0 
回复 3楼 zanzan1986
那个发黑红梅那里我没有用余13,是用整除的,所以应该没有越界
2011-03-23 11:06
q1826050194
Rank: 2
等 级:论坛游民
帖 子:67
专家分:19
注 册:2011-3-7
收藏
得分:0 
回复 4楼 zanzan1986
咦,在哪里吖,我刚才看了还是没看到,可以画出来吗?
2011-03-23 11:07
zanzan1986
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:100
专家分:140
注 册:2011-2-22
收藏
得分:0 
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#include<string.h>
typedef struct
{
    char suit[10];
    char face[10];
}change;
change card[52];
char *face[]={"1","2","3","4","5","6","7","8","9","10","jack","queen","king"};
char *suit[]={"spade","hearts","clubs","diamonds"};   //这里的数组是4  下标是  0 1 2 3   所以要 a/13 - 1 才能正常

void start(change card[],char face[],char suit[])
{
    int a,b,c;
for(a=0;a<52;a++)
{
    int a;
    strcpy(card[a].face,face[a%13]);
    strcpy(card[a].suit,suit[a/13]);
}
//这里要加个 } 你这里没加啊

int main()
{
    start(card,face,suit);
    return 0;
}

2011-03-23 11:27
q1826050194
Rank: 2
等 级:论坛游民
帖 子:67
专家分:19
注 册:2011-3-7
收藏
得分:0 
回复 7楼 zanzan1986
  是吖 ,谢了,    我刚加了,试了一下,但是还是会出现警告,而且更多了,不知道为什么?

--------------------配置: mingw5 - CUI Release, 编译器类型: MinGW--------------------

检查文件依赖性...
正在编译 C:\Users\Administrator\Desktop\发牌模拟.c...
[Warning] C:\Users\Administrator\Desktop\发牌模拟.c:20: warning: passing arg 2 of `strcpy' makes pointer from integer without a cast
[Warning] C:\Users\Administrator\Desktop\发牌模拟.c:21: warning: passing arg 2 of `strcpy' makes pointer from integer without a cast
[Warning] C:\Users\Administrator\Desktop\发牌模拟.c:28: warning: passing arg 2 of `start' from incompatible pointer type
[Warning] C:\Users\Administrator\Desktop\发牌模拟.c:28: warning: passing arg 3 of `start' from incompatible pointer type
正在连接...

完成构建 发牌模拟: 0 个错误, 4 个警告
生成 C:\Users\Administrator\Desktop\发牌模拟.exe

2011-03-23 12:41
给力芬2010
Rank: 2
等 级:论坛游民
帖 子:48
专家分:71
注 册:2011-3-17
收藏
得分:0 
结构体初始化有问题是吗
2011-03-23 13:51
forever74
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:CC
等 级:版主
威 望:58
帖 子:1687
专家分:4253
注 册:2007-12-27
收藏
得分:0 
不要重名就可以了

对宇宙最严谨的描述应该就是宇宙其实是不严谨的
2011-03-23 14:00
快速回复:关于指针数组不能引用,求助
数据加载中...
 
   



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

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