const char ar1[5] = "work";
const char ar2[5] = "flue";
/*...*/
const char ar50[6] = "alias";
You should prefer the above style rather than the other one. I find the following reason to do it in this way.
There is type and size associated with these array variables. So there would be better type safety in your program.
This version makes program easier to read and understand and debug by others. This is very important attribute and we should consider while writing any software.
There is no standard defined for macro/#define so different compiler is free to choose the different strategy while expanding these in your program. There could be one copy for each time the literal appears in source code, or one master copy shared among the \ instances.
EDIT
As you have mentioned that you would just be reading these strings in your program, it is really good idea to make it const.This also clearly shows the intent of the programmer to the reader.