I understand that you have not worked with STL containers yet ... If you are new to C ++, this might be a good idea. In any case, begin and end are not keywords in either the C ++ standard or C ++ 11. But they are both function names, returning an iterator object that is used to navigate through the STL container as follows:
vector<int> x = { 1, 2, 3, 4 }; vector<int>::iterator it; for (it = x.begin(); it != x.end(); ++it) { cout << *it << endl; }
In C ++ everyday practice, this concept is used so often that these names were listed as “custom keywords” CodeBlocks. User keywords are usually green and therefore different from language keywords. If this bothers you, you can manipulate the list or even completely erase it. Just select "Settings" → "Editor" in the menu bar, and then click on the "Syntax Highlighting" tab. There you can make all the settings that you like. Get manual for more information.
image http://imageshack.us/a/img189/3956/m1qe.png
Regardless of whether or not syntax highlighting, you should, however, get compilation errors. The reason may be that your project includes standard library headers, such as #include <vector> , and your code contains using namespace std; somewhere. Perhaps you are working with a precompiled header - also check it in this case.
In addition, I would recommend you take a look at the standard library containers and give it a try. They have several advantages over conventional arrays, but it is better to know yourself. However, do not let yourself be intimidated by these iterators - in C ++ 11 you can also write
vector<string> y = { "Foo", "Bar" }; for (auto& str : y) cout << str << endl;
and this will also work with your arrays
float z[] = { 0.5f, 1.5f, 2.5f, 3.5f }; for (auto& num : z) cout << num << endl;