I need to make a program that shifts the contents of my array one space to the right so {1,2,3,4,5} goes to {5,1,2,3,4}. I'm not sure where I would start
Here is a link to some example code. I'm guessing that this is an assignment so if you have to write the algorithm yourself, take a look at the example and do something similar in your own hand written loop. On the other hand if you need to just rotate an array, you can use std::rotate directly. http://cplusplus.com/reference/algorithm/rotate/
If the array has N elements:
Save off a copy of element N-1;
Copy the N-2nd entry to the N-1st;
Copy the N-3rd to the N-2nd;
Copy the N-4th to the N-3rd;
and so forth down to copying the 0th element to the 1st.
Then set the 0th element equal to the value you originally saved off.
Wouldn't it be better to write a function that rotates the array any number of places? Otherwise you'd have to make a function call over and over in order to rotate my multiple places. That would be the advantage of following the example of std::rotate. You should be able to copy and paste the example from that link and change it to use pointers to whatever kind of array you have (unless you'd prefer to write it as a template function). Or study the example and just for kicks see if you can design another way of meeting the same requirement. Although this may be a requirement for the class you don't really want to be in the habit of reinventing the std algorithms unless you can prove that you can develop something that is more efficient.