首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 操作系统 > UNIXLINUX >

构造体定义

2012-10-21 
结构体定义下面三个那个正确?为什么?一个是:struct {struct{struct {double x,y,zdouble rmscharresidue

结构体定义
下面三个那个正确?为什么?
一个是:
struct {
  struct{
  struct {
  double x,y,z;
  double rms;
  char residue[8];
  char name[8];
  int number;  
  int resnum;
  int selected;
  } ATOM[MAXS];
  int atoms; 
  char residue;  
  int residueno; / 
  } RESIDUE;
 double xcen,ycen,zcen;
 intatoms;
 char filename[800];
 //char residue;  
 int residueno;  
} molecule;

另一个是:
typedef struct {
 struct {
  double x,y,z;
  double rms; 
  char residue[8]; 
  char name[8];
  int number;
  int resnum;
  int selected;
  } atm[MAXATMS];

  struct{
  int atoms;
  char residue; / 
  //int number;
  int residueno;  
  }RESIDUE;

 double xcen,ycen,zcen;
 intatoms; 
 char filename[800]; 
 char residue;  
 int residueno;  
}molecule;

第三个是:
typedef struct {
 double x,y,z; 
 double rms; 
 char residue[8];// 
 char name[8];
 int number;  
 int resnum;
 int selected;
 }ATOM[MAXS];

typedef struct{
 ATOM *atom;
 int atoms; 
 char residue;  
 int residueno;  
 }RESIDUE;

typedef struct{
 RESIDUE *residue;
 double xcen,ycen,zcen;
 intatoms;  
 char filename[800];  
 int residueno;  
 }molecule;

[解决办法]
定义没错 是你引用错误。你应该是用的第三种方式。试试这个呢 molecule.residue->atoms = 1
[解决办法]
除第一种外,其他的根据具体需求来确定

热点排行