How do I find the length of an array?

If you mean a C-style array, then you can do something like: int a[7]; std::cout << “Length of array = ” << (sizeof(a)/sizeof(*a)) << std::endl; This doesn’t work on pointers (i.e. it won’t work for either of the following): int *p = new int[7]; std::cout << “Length of array = ” << (sizeof(p)/sizeof(*p)) << std::endl; … Read more

What is the easiest way to initialize a std::vector with hardcoded elements?

If your compiler supports C++11, you can simply do: std::vector<int> v = {1, 2, 3, 4}; This is available in GCC as of version 4.4. Unfortunately, VC++ 2010 seems to be lagging behind in this respect. Alternatively, the Boost.Assign library uses non-macro magic to allow the following: #include <boost/assign/list_of.hpp> … std::vector<int> v = boost::assign::list_of(1)(2)(3)(4); Or: … Read more

How can I convert a std::string to int?

In C++11 there are some nice new convert functions from std::string to a number type. So instead of atoi( str.c_str() ) you can use std::stoi( str ) where str is your number as std::string. There are version for all flavours of numbers: long stol(string), float stof(string), double stod(string),… see http://en.cppreference.com/w/cpp/string/basic_string/stol

Read whole ASCII file into C++ std::string [duplicate]

There are a couple of possibilities. One I like uses a stringstream as a go-between: std::ifstream t(“file.txt”); std::stringstream buffer; buffer << t.rdbuf(); Now the contents of “file.txt” are available in a string as buffer.str(). Another possibility (though I certainly don’t like it as well) is much more like your original: std::ifstream t(“file.txt”); t.seekg(0, std::ios::end); size_t … Read more