Jiro_IsNumberStr

整数の文字列かどうか判定します。

定義

Boolean Jiro_IsNumberStr(char * str);

戻り値

整数の文字列であればtrue、整数の文字列でなければfalseを返します。

引数

  • str
    判定対象となる文字列バッファを与えます。処理後、バッファの内容は変化しません。

解説

この関数は与えられた文字列が整数である場合、 符号の有無に関わらずtrueを返します。 小数やカンマを含む整数、カンマを含む小数である場合はfalseを返します。

プログラム例

プログラムソース

#include <stdio.h>
#include “jiro.h”

void main( void )
{
char numStr1[32];
char numStr2[32];
char numStr3[32];
char numStr4[32];
char numStr5[32];
Boolean retFlag;

strcpy( numStr1, “3302” );
strcpy( numStr2, “3302.1” );
strcpy( numStr3, “3,302” );
strcpy( numStr4, “+3302” );
strcpy( numStr5, “-3302” );

// numStr1を判定
retFlag = Jiro_IsNumberStr( numStr1 );
if( retFlag == true )
{
printf( “%s … true\n”, numStr1 );
}
else
{
printf( “%s … false\n”, numStr1 );
}

// numStr2を判定
retFlag = Jiro_IsNumberStr( numStr2 );
if( retFlag == true )
{
printf( “%s … true\n”, numStr2 );
}
else
{
printf( “%s … false\n”, numStr2 );
}

// numStr3を判定
retFlag = Jiro_IsNumberStr( numStr3 );
if( retFlag == true )
{
printf( “%s … true\n”, numStr3 );
}
else
{
printf( “%s … false\n”, numStr3 );
}

// numStr4を判定
retFlag = Jiro_IsNumberStr( numStr4 );
if( retFlag == true )
{
printf( “%s … true\n”, numStr4 );
}
else
{
printf( “%s … false\n”, numStr4 );
}

// numStr5を判定
retFlag = Jiro_IsNumberStr( numStr5 );
if( retFlag == true )
{
printf( “%s … true\n”, numStr5 );
}
else
{
printf( “%s … false\n”, numStr5 );
}

// numStr6を判定
retFlag = Jiro_IsNumberStr( numStr6 );
if( retFlag == true )
{
printf( “%s … true\n”, numStr6 );
}
else
{
printf( “%s … false\n”, numStr6 );
}
}

出力

3302 … true
3302.1 … false
3,302 … false
+3302 … true
-3302 … true

参照