My program always seem to crash, and I bet its shortage of memory.
So here are my declarations of my structures:

Code:
struct ItemsDataStruct
{
    char cItemName[32];
    char cItemDesc[128];
    int nItemCount;
structItemsDataStruct *pNext;
structItemsDataStruct *pPrev;
};


struct IPDataStruct
{
    char cIPName[32];
    char cIPDesc[128];
    char cIPLocation[32];
    struct ItemsDataStruct sItemInIP[10];
    struct IPDataStruct *pNext;
    struct IPDataStruct *pPrev;
};


struct InventoryStruct
{
    struct ItemsDataStruct sInventory;
};


struct GameplayStruct
{
    char cCharName[32];
    struct InventoryStruct sUserInventory[50];
};


struct MapDataStruct
{
    char cMapName[32];
    char cMapDesc[128];
    struct IPDataStruct sIPInMap[10];
    struct ItemsDataStruct sMapItems;
    struct MapDataStruct *pNext;
    struct MapDataStruct *pPrev;
};
In Main:

Code:
struct MapDataStruct OrigMapData[30];
struct MapDataStruct MapData[30];
struct IPDataStruct IPData[30];
struct ItemsDataStruct ItemData[30];
struct LoginStruct AdminAccount;


My program keeps crashing, and I bet its because I didn't malloc it. So please show me how to malloc these structures, it will be really helpful to learn from an example.

Thank you.