c – Pointer to custom struct typedef issue

As a simple beginner project, I am trying to build a linked list. I have created a structure typedef for the node. My issue is that I want another typedef as a pointer to a list node, for some reason, this is not working and I am very confused. I have read other answers on here and none of them have worked.


#include <stdio.h>
#include "linkedList.h"

int main(int argc, char **argv){
    return 0;


#ifndef linkedList
#define linkedList

typedef struct listStrNode {
    char *string;
    struct listStrNode *next;
} listStringNode;

typedef listStringNode *linkedList;



In file included from main.c:3:
linkedList.h:9:35: error: expected identifier or ‘(’ before ‘;’ token
    9 | typedef listStringNode *linkedList;

compiled with:

gcc main.c

any ideas?