From 179fa413b047bede6e32109e2ce82437c5fb8d34 Mon Sep 17 00:00:00 2001 From: MenTaLguY Date: Mon, 16 Jan 2006 02:36:01 +0000 Subject: moving trunk for module inkscape (bzr r1) --- src/svg/itos.cpp | 77 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 77 insertions(+) create mode 100644 src/svg/itos.cpp (limited to 'src/svg/itos.cpp') diff --git a/src/svg/itos.cpp b/src/svg/itos.cpp new file mode 100644 index 000000000..9b1232130 --- /dev/null +++ b/src/svg/itos.cpp @@ -0,0 +1,77 @@ +///////////////////////////////////////////////////////////////////////// +// ftoa.cpp +// +// Copyright (c) 1996-2003 Bryce W. Harrington [bryce at osdl dot org] +// +//----------------------------------------------------------------------- +// License: This code may be used by anyone for any purpose +// so long as the copyright notices and this license +// statement remains attached. +//----------------------------------------------------------------------- +// +// This routine converts an integer into a string +// +///////////////////////////////////////////////////////////////////////// + +// Standard include files +#include // for string + +using namespace std; + +string itos(int n) +{ + int sign; + string s; + + if ((sign = n) < 0) // record sign + n = -n; // make n positive + do { // generate digits in reverse order + s += (char(n % 10) + '0'); // get next digit + } while ((n/=10) > 0); // delete it + + if (sign < 0) + s += '-'; + + reverse(s.begin(), s.end()); // This is what the code should look like + // if the string class is compatible with + // the standard C++ string class +#ifdef DUMB_OS_LIKE_WINDOWS + // In Windows, we'll use this hack... + for (int i=0, j=s.GetLength()-1; i 0); // delete it + + reverse(s.begin(), s.end()); // This is what the code should look like + // if the string class is compatible with + // the standard C++ string class +#ifdef DUMB_OS_LIKE_WINDOWS + // In Windows, we'll use this hack... + for (int i=0, j=s.GetLength()-1; i