... For the void set how would i set the char mer[] to am or pm. ...
The sprintf function should work for that:
#include <stdio.h>
void Set(char string_time[])
{
sprintf(meridian, string_time);
} If you do this withstring_time larger than meridian, it will crash and burn horribly.
I recommend that you don't store and manipulate that value as a char array. If it's only going to ever have two distinct values, it's a lot easier to handle if you use a simpler type, like an int, for example. Just decide on a meaning for the simpler variable, e.g. a zero int value means "AM" and nonzero means "PM". If you're writing C++, then a bool is even better--it only has two possible values. The only time you need text is when you're displaying the time for a human being, which can be done in a separate function that interprets the numeric values and prints out the textual meaning. This will make your code simpler and easier to work with.