Вы, вероятно, хотите это:
typedef struct tit *TITOLO;
struct tit {
char nome[20];
};
int main()
{
TITOLO titolo;
titolo = (TITOLO)malloc(4 * sizeof(struct tit));
if (titolo == NULL) exit(1);
int i;
for (i = 0; i < 4; i++) {
printf("Insert title: ");
scanf("%s", titolo[i].nome);
}
return 0;
}
TITOLO
уже указатель типа.
Но лучше всего сделать так, как предложено ответом Лундина и комментарием с множеством голосов:не скрывайте указатели типов за typedefs, это только добавляет путаницу.
BTW:
... = (TITOLO)malloc(...
можно записать как:
... = malloc(...
приведениесовсем не обязательно.