/** @brief 説明、引数、戻り値はMonapi2リファレンス参照。 @date 2005/08/20 junjunn 作成 */ float StringFn::toFloat(cpchar1 cszSource,cpchar1* pcszEnd) { //cszEndはNULLの可能性があるのでこれを使う。 cpchar1 cszEndTemp; //まずは整数パートを拾う float fReturn = (float)getIntAt(cszSource,10,&cszEndTemp); //小数パート if (*cszEndTemp == '.') { float fFloatPart = (float)getIntAt(cszEndTemp+1,10,&cszEndTemp); //今得たfFloatPartは整数での形なので小数点に直すため10で割り続ける。 while (fFloatPart > 1) fFloatPart/=10; fReturn+=(fReturn>=0)?fFloatPart:-fFloatPart; } if (pcszEnd) *pcszEnd=cszEndTemp; return fReturn; }
/** @brief 説明、引数、戻り値はMonapi2リファレンス参照。 @date 2005/08/20 junjunn 作成 */ int StringFn::toInt(cpchar1 cszSource,int iBase,cpchar1* pcszEnd) { return getIntAt(cszSource,iBase,pcszEnd); }
int getFirstInt(SlimList* args) { return getIntAt(args, 0); }