Skip to content

scan_number in string_utilities.cc should permit rational numbers, i.e. those with a decimal point. #198

@mholtrop

Description

@mholtrop

Error is in the updated code. Corrected code, string_utilities.cc:54 is:

{
	// Scan the c_string str for numbers only, then return the value as a float.
	// The str is not allowed to have spaces or alphanumerics, only 0-9 and .
	int i=0;
// 	while(char c=str[i++]) if((isalpha(c) || ispunct(c) || iscntrl(c) || isspace(c)) && !(c=='-' || c=='+' || c=='e' || c=='E') )
	while(char c=str[i++]) if(!(isdigit(c) || c=='-' || c=='+' || c=='e' || c=='E' || c=='.'))
	{
		cout << "WARNING: Unexpected character found in number string: " << str << endl;
		cout << "Exiting " << endl; exit(1);
	}
	return( stringToDouble(str));
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions