In the following program, I am getting the following error:

invalid type argument of 'unary *'

Can anyone please tell me what I am doing wrong with the structure manipulation to get this error.

Thank you very much.

P.S. For those of you who have asked about the values

of a,b,c,d, & e they really don't matter one bit. They

will be defined later. I am also using the

linux gcc compilier.

************************************************

#include <stdio.h>

#define a 1;

#define b 2;

#define c 3;

#define d 4;

#define e 5;

typedef struct {

double x[100];

} Lower;

typedef struct {

double y[100];

Lower infer;

} Upper;

main ()

{

Lower a;

Upper k[3];

int n, i;

double delta = 3.0, temp;

double p1, p2;

printf("Enter the values for p1 and p2: ");

scanf("%f%f", &p1, &p2);

for (i = 1; i <= 3; i++)

{

for (n = 1; n < 100; n++)

{

if (i == 1)

{

/************ THIS IS WHERE THE PROBLEMS ARE OCCURING **********/

k[1].y[n] = p1 *

(a * k[1].infer.x[n-1] +

b * k[3].y[n-1] +

c * k[2].y[n-1] +

d * k[1].y[n-1] +

e) + p2;

/*************************************************************/

}

}

}

return 0;

}