CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C/C++ >  C语言

结构体 指针的问题,高手帮忙看看

楼主robinmatrix(无花无酒)2005-08-03 18:46:37 在 C/C++ / C语言 提问

已经定了一个结构体struct   Job,  
  然后在另外一个struct中引用了Job定义了一个数组i[n]  
  struct   P  
  {  
                            Job*   i[n];  
  }p[n];  
   
  然后又定义了一个       Job   *q[n]  
  进行赋值     q=p.i  
   
  结果  
  编辑出错:提示cannot   convert   from   'struct   Job   *[20]'   to   'struct   Job   *'  
  高手帮忙解答一下  
                   
  问题点数:20、回复次数:8Top

1 楼citysoft(擦身而过)回复于 2005-08-03 18:51:24 得分 5

改成q[i]=p.i看一下  
  q是整个q[n]数组的首地址吧Top

2 楼llf_hust()回复于 2005-08-03 18:53:27 得分 5

编辑出错:提示cannot   convert   from   'struct   Job   *[20]'   to   'struct   Job   *'  
   
   
  /*   二个变量的类型不同当然不能赋值       */  
  把整个的程序代码贴出来我们帮你看一下Top

3 楼megaboy(飞天御剑流之杀神一刀斩)回复于 2005-08-03 18:53:55 得分 0

q和p.i都是数组名,都是地址常量,不能这样赋值的。要这样做:  
   
  q[0]   =   p[0].i[0];  
  q[1]   =   p[0].i[1];  
  q[2]   =   p[0].i[2];  
  ..............Top

4 楼robinmatrix(无花无酒)回复于 2005-08-03 19:00:49 得分 0

struct   Job  
   
  {  
  int   no;  
  int   no_1;//initial   sequence   number  
  int   pos;//position   of   the   job   in   partial   sequence    
   
  int   pt[m];  
   
  int   sum;  
  int   sum2_m;  
   
  int   parsum2_m[m-1];  
  int   parsum1_m1[m-1];  
   
  int   d_p[n];//  
  int   d_n[n];//  
   
  struct   Job*   prev;  
  struct   Job*   last;  
  };  
   
  struct   PartInsertion  
  {  
  int   insertMakespan;  
  Job*   insertSeq[n];  
  }partialInsert[n];  
   
  PartSeq   minCMax(int   jobNo,PartInsertion*   PartInsert)  
  {  
  PartSeq   minCmax;  
  int   parMakespan;  
  int   sn;  
  for(int   i=0;i<=jobNo;i++)  
  {  
  if(PartInsert[i].insertMakespan>=parMakespan)  
  {  
  parMakespan=PartInsert[i].insertMakespan;  
  sn=i;  
  }  
  }  
  minCmax.partMakespan=parMakespan;  
   
  minCmax.partSequence=PartInsert->insertSeq;  
         
   
  return   minCmax;  
   
  };Top

5 楼jixingzhong(瞌睡虫·星辰)回复于 2005-08-03 19:07:50 得分 5

如果不是字符串数组  
   
  (包括自定义类型数组)  
   
  都不能使用数组名来直接赋值  
   
   
   
   
  需要逐一的给各个元素内容写入  
   
  q[x]   =   p[y].i[x];        
   
  (   x,y   根据实际程序确定   )Top

6 楼wzping007()回复于 2005-08-03 19:11:49 得分 0

q[i]=p[t].iTop

7 楼wzping007()回复于 2005-08-03 19:20:29 得分 5

q[i]=p[t].i[x]  
  Top

8 楼robinmatrix(无花无酒)回复于 2005-08-03 19:55:38 得分 0

谢谢各位Top

相关问题

  • 结构体指针
  • 结构体的指针??
  • 指针和结构体
  • 如何delete结构体指针?
  • 结构体指针的问题
  • 结构体指针的对位
  • 结构体套结构体指针,用memcpy
  • 结构指针的指针的问题?
  • 关于结构体的指针在开线程时的问题!!
  • 请问结构体指针如何判断和赋值

关键词

  • 数组
  • mincmax
  • partinsert
  • parmakespan
  • 赋值
  • job
  • struct
  • 不能

得分解答快速导航

  • 帖主:robinmatrix
  • citysoft
  • llf_hust
  • jixingzhong
  • wzping007

相关链接

  • C/C++ Blog
  • C/C++类图书
  • C/C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo