use base 10 by default in wxString::To[U]Long
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@14323 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -922,21 +922,20 @@ if the string does not represent such number.
|
|||||||
|
|
||||||
\membersection{wxString::ToLong}\label{wxstringtolong}
|
\membersection{wxString::ToLong}\label{wxstringtolong}
|
||||||
|
|
||||||
\constfunc{bool}{ToLong}{\param{long}{ *val}, \param{int }{base = $0$}}
|
\constfunc{bool}{ToLong}{\param{long}{ *val}, \param{int }{base = $10$}}
|
||||||
|
|
||||||
Attempts to convert the string to a signed integer in base {\it base}. Returns
|
Attempts to convert the string to a signed integer in base {\it base}. Returns
|
||||||
{\tt TRUE} on success in which case the number is stored in the location
|
{\tt TRUE} on success in which case the number is stored in the location
|
||||||
pointed to by {\it val} or {\tt FALSE} if the string does not represent a
|
pointed to by {\it val} or {\tt FALSE} if the string does not represent a
|
||||||
valid number in the given base.
|
valid number in the given base.
|
||||||
|
|
||||||
The default value of {\it base} $0$ is special and means that the usual rules
|
The value of {\it base} must be comprised between $2$ and $36$, inclusive, or
|
||||||
of {\tt C} numbers are applied: if the number starts with {\tt 0x} it is
|
be a special value $0$ which means that the usual rules of {\tt C} numbers are
|
||||||
considered to be in base $16$, if it starts with {\tt 0} - in base $8$ and in
|
applied: if the number starts with {\tt 0x} it is considered to be in base
|
||||||
base $10$ otherwise. Note that you may want to specify the base $10$ explicitly
|
$16$, if it starts with {\tt 0} - in base $8$ and in base $10$ otherwise. Note
|
||||||
if you are parsing the numbers which may have leading zeroes as otherwise the
|
that you may not want to specify the base $0$ if you are parsing the numbers
|
||||||
string {\tt "09"} may not be parsed correctly: it would be understood as an
|
which may have leading zeroes as they can yield unexpected (to the user not
|
||||||
octal number because of the leading zero and the parsing would then fail as
|
familiar with C) results.
|
||||||
{\tt '9'} is not a valid octal digit.
|
|
||||||
|
|
||||||
\wxheading{See also}
|
\wxheading{See also}
|
||||||
|
|
||||||
@@ -945,7 +944,7 @@ octal number because of the leading zero and the parsing would then fail as
|
|||||||
|
|
||||||
\membersection{wxString::ToULong}\label{wxstringtoulong}
|
\membersection{wxString::ToULong}\label{wxstringtoulong}
|
||||||
|
|
||||||
\constfunc{bool}{ToULong}{\param{unsigned long}{ *val}, \param{int }{base = $0$}}
|
\constfunc{bool}{ToULong}{\param{unsigned long}{ *val}, \param{int }{base = $10$}}
|
||||||
|
|
||||||
Attempts to convert the string to a ansigned integer in base {\it base}.
|
Attempts to convert the string to a ansigned integer in base {\it base}.
|
||||||
Returns {\tt TRUE} on success in which case the number is stored in the
|
Returns {\tt TRUE} on success in which case the number is stored in the
|
||||||
|
@@ -673,12 +673,15 @@ public:
|
|||||||
// check if the string contents matches a mask containing '*' and '?'
|
// check if the string contents matches a mask containing '*' and '?'
|
||||||
bool Matches(const wxChar *szMask) const;
|
bool Matches(const wxChar *szMask) const;
|
||||||
|
|
||||||
// conversion to numbers: all functions return TRUE only if the whole string
|
// conversion to numbers: all functions return TRUE only if the whole
|
||||||
// is a number and put the value of this number into the pointer provided
|
// string is a number and put the value of this number into the pointer
|
||||||
|
// provided, the base is the numeric base in which the conversion should be
|
||||||
|
// done and must be comprised between 2 and 36 or be 0 in which case the
|
||||||
|
// standard C rules apply (leading '0' => octal, "0x" => hex)
|
||||||
// convert to a signed integer
|
// convert to a signed integer
|
||||||
bool ToLong(long *val, int base = 0) const;
|
bool ToLong(long *val, int base = 10) const;
|
||||||
// convert to an unsigned integer
|
// convert to an unsigned integer
|
||||||
bool ToULong(unsigned long *val, int base = 0) const;
|
bool ToULong(unsigned long *val, int base = 10) const;
|
||||||
// convert to a double
|
// convert to a double
|
||||||
bool ToDouble(double *val) const;
|
bool ToDouble(double *val) const;
|
||||||
|
|
||||||
|
@@ -1097,6 +1097,7 @@ int wxString::Find(const wxChar *pszSub) const
|
|||||||
bool wxString::ToLong(long *val, int base) const
|
bool wxString::ToLong(long *val, int base) const
|
||||||
{
|
{
|
||||||
wxCHECK_MSG( val, FALSE, _T("NULL pointer in wxString::ToLong") );
|
wxCHECK_MSG( val, FALSE, _T("NULL pointer in wxString::ToLong") );
|
||||||
|
wxASSERT_MSG( !base || (base > 1 && base <= 36), _T("invalid base") );
|
||||||
|
|
||||||
const wxChar *start = c_str();
|
const wxChar *start = c_str();
|
||||||
wxChar *end;
|
wxChar *end;
|
||||||
@@ -1110,6 +1111,7 @@ bool wxString::ToLong(long *val, int base) const
|
|||||||
bool wxString::ToULong(unsigned long *val, int base) const
|
bool wxString::ToULong(unsigned long *val, int base) const
|
||||||
{
|
{
|
||||||
wxCHECK_MSG( val, FALSE, _T("NULL pointer in wxString::ToULong") );
|
wxCHECK_MSG( val, FALSE, _T("NULL pointer in wxString::ToULong") );
|
||||||
|
wxASSERT_MSG( !base || (base > 1 && base <= 36), _T("invalid base") );
|
||||||
|
|
||||||
const wxChar *start = c_str();
|
const wxChar *start = c_str();
|
||||||
wxChar *end;
|
wxChar *end;
|
||||||
|
Reference in New Issue
Block a user