So I am opening a file that contains cards data for a card game I am designing for my assignment, basically each line contains 104 characters and each line is equal to a deck of card.

I'm using a `char ****` because of 

1. number of decks
2. num of players (4)
3. num of cards (13)
4. card is represented like `9H`, `3D` means nine of hearts and three of diamonds, so it uses 2 characters.

I want to use `fgets()` to read multiple lines but I'm not sure if this works...

`for` loop is just the way how the deckfile is set, I just want to know if the `fgets` will go to the next line when it hits `\n`...

```
    di->cards = (char ****)malloc(sizeof(char***) * di->numDecks);
    for (i = 0; i < di->numDecks; i++) {
        di->cards[i] = (char ***)malloc(sizeof(char**) * 4);
        for (j = 0; j < 4, j++) {
            di->cards[i][j] = (char **)malloc(sizeof(char*) * 13);
            for (k = 0, k < 13, k++) {
                di->cards[i][j][k] = (char *)malloc(sizeof(char) * 3);
            }
        }
    }

    for (i = 0; i < di->numDecks, i++) {
        for (j = 0; j < 13, j++) {
            for (k = 0; k < 4; k++) {
                while ((fgets(cards[i][k][j], 3, di->deckFile)) != NULL);
            }
        }
    }

```