整数または小数の文字列かどうか判定します。
定義
Boolean Jiro_IsNumOrPeriodStr(char * str);
戻り値
整数または小数であればtrue、整数でも小数でもなければfalseを返します。
引数
- str
判定対象となる文字列バッファを与えます。処理後、与えたバッファの内容は変化しません。
解説
この関数は与えられた文字列が整数または小数である場合、符号の有無に関わらずtrueを返します。 カンマを含む整数、カンマを含む小数である場合はfalseを返します。
プログラム例
プログラムソース
#include <stdio.h>
#include “jiro.h”
void main( void )
{
Boolean retFlag;
// 文字列定義<
char * numStr1 = “3302”;
char * numStr2 = “3302.1”;
char * numStr3 = “3,302”;
char * numStr4 = “+3302”;
char * numStr5 = “-3302”;
// numStr1を判定
retFlag = Jiro_IsNumOrPeriodStr( numStr1 );
if( retFlag == true )
{
printf( “%s … true\n”, numStr1 );
}
else
{
printf( “%s … false\n”, numStr1 );
}
// numStr2を判定
retFlag = Jiro_IsNumOrPeriodStr( numStr2 );
if( retFlag == true )
{
printf( “%s … true\n”, numStr2 );
}
else
{
printf( “%s … false\n”, numStr2 );
}
// numStr3を判定
retFlag = Jiro_IsNumOrPeriodStr( numStr3 );
if( retFlag == true )
{
printf( “%s … true\n”, numStr3 );
}
else
{
printf( “%s … false\n”, numStr3 );
}
// numStr4を判定
retFlag = Jiro_IsNumOrPeriodStr( numStr4 );
if( retFlag == true )
{
printf( “%s … true\n”, numStr4 );
}
else
{
printf( “%s … false\n”, numStr4 );
}
// numStr5を判定
retFlag = Jiro_IsNumOrPeriodStr( numStr5 );
if( retFlag == true )
{
printf( “%s … true\n”, numStr5 );
}
else
{
printf( “%s … false\n”, numStr5 );
}
}
出力
3302 … true
3302.1 … true
3,302 … false
+3302 … true
-3302 … true