+
+
+string itostring(unsigned long i) {
+ if (i == 0)
+ return string("0");
+
+ string tmp;
+ for (; i > 0; i /= 10)
+ tmp.insert(tmp.begin(), "0123456789"[i%10]);
+ return tmp;
+}
+
+
+string itostring(long i) {
+ std::string tmp = itostring( (unsigned long) std::abs(i));
+ if (i < 0)
+ tmp.insert(tmp.begin(), '-');
+ return tmp;
+}