Secondo me stai facendo difficili le cose semplici...
Comunque ti ho corretto il codice...
Codice:
#include <stdlib.h>
#include <stdio.h>
#define DIM 80
void piglatin (char arr[], int dim)
{
char *p=&arr[0];
char *c;
for (c=&arr[1]; c<=&arr[dim-1]; c++)
printf ("%c", *c);
printf ("%ca ",*p);
}
int main()
{
int g=0;
char riga [DIM];
char a [DIM];
char *p;
printf ("Scrivi una riga di testo\n");
gets (riga);
for (p=&riga[0]; p<&riga[DIM]; p++)
{
if (*p == '\0')
{
if(g > 0)
piglatin(a, g);
break; /*se raggiungo la fine della strina esco*/
}
if (*p!=' ')
a[g++]=*p;
else
{
if(g > 0)
piglatin (a,g);
g=0;
}
}
system("PAUSE");
return 0;
}