Arrays can be dynamic or static. Depending on how you create it. There is also std::array<t , size> which is a pretty much a static array like t array [size]. You probably want to use a std::vector<t> you aren't very specific on what you are trying to do. If you are unsure at the bottom of the link I showed it has a flow chart on which to use.
Yes, look at std::string - it is basically a vector specified for words. If you meant a word array as in an array of words, you could have a vector of strings (i.e. std::vector<std::string>).