Mail Archives: djgpp/1994/01/13/08:15:22
// Hello!
//
// I'm in some trouble and I'm afraid that it's me who caused it.
// However, I'm not able to understand what's going on.
// djgpp 1.11 (maint1) complains about the lines marked with "?????":
//
// "called object is not a function"
//
// I compiled it with "gcc -Wall test.cc".
//
// Any hints? Thomas
//
//
#include <std.h>
#include <stdio.h>
#include <string.h>
#include <math.h>
typedef enum { c1,ci, /* Holoedrie ci */
c2,cs,c2h, /* Holoedrie c2h */
d2,c2v,d2h, /* Holoedrie d2h */
c4,s4,c4h,d4,c4v,d2d,d4h, /* Holoedrie d4h */
t,th,o,td,oh, /* Holoedrie oh */
c3,s6,d3,c3v,d3d, /* Holoedrie d3d */
c6,c3h,c6h,d6,c6v,d3h,d6h } PunktGruppe; /* Holoedrie d6h */
int ng(PunktGruppe gb); /* # of elements of group gb */
PunktGruppe dg(PunktGruppe gb); /* rot. part of group gb */
char *gn(PunktGruppe gb); /* group name */
typedef double a33[3][3];
#define msz 24 /* maximum # of symmetry elements */
typedef struct rstern {
int strahlenzahl;
a33 rmat[msz]; } rstern;
int make_rstar(double a,
double b,
double g,
PunktGruppe gb,
rstern *strn);
typedef enum { _001_c4,_001_c2,
_001_c6,_001_c3,
_100_c2,_111_c3 } rsym_op;
a33 *frotmat(double alpha, double beta, double gamma);
a33 matrizes[] = {*frotmat(M_PI/2,0,0),
*frotmat(M_PI,0,0),
*frotmat(M_PI/3,0,0),
*frotmat(2*M_PI/3,0,0),
*frotmat(0,M_PI,M_PI),
*frotmat(0,M_PI/2,M_PI/2)};
int main(void)
{
int n, na, nb, ng;
rstern rstrn;
for (n = c1; n <= d6h; n++)
for (na = 0; na < 4; na++)
for (nb = 0; nb < 3; nb++)
for (ng = 0; ng < 4; ng++)
{
make_rstar(na*M_PI/2,
nb*M_PI/2,
ng*M_PI/2,
dg(PunktGruppe(n)),&rstrn);
if (ng(dg(PunktGruppe(n))) != rstrn.strahlenzahl) // ?????
printf("Gruppe %s: %d/%d Elemente (%d/2,%d/2,%d/2)*PI\n",
gn(PunktGruppe(n)),
ng(dg(PunktGruppe(n))),
rstrn.strahlenzahl, // ?????
na,nb,ng);
}
printf("Ansonsten alles o.k.\n");
}
- Raw text -