取格式化字符串兩頭的數值

int is_in_period(int num, char *prd);

int main(int argc, char *argv[])
{
    int num = 15;
    if( is_in_period(num, "11-20") )
    printf("yes!\n");
    else 
    printf("no!\n");
    
    exit(0);
}

/**********************************************************
func: is_in_period(int num, char *prd)
desc: 計算催收費率和催收佣金模塊,用來判斷催收天數是否prd指定的期間內。
args:num--催收天數;prd--日期天數,格式爲"11-20",表示11到20天(包含邊界值)。
return: 1--在, 0--不在
autor:L Gh
DATE: 2013-03-25
***********************************************************/
int is_in_period(int num, char *prd)
{
	int pos, ibegin, iend;
	char s_begin[10], s_end[10];
	
	pos = strpos(prd, '-', 0);
	if( pos<=1 || strlen(prd)<=2 )
		return 0;
	
	memset(s_begin, 0, sizeof(s_begin));
	memset(s_end, 0, sizeof(s_end));
	
	memcpy(s_begin, prd, pos-1);
	memcpy(s_end, prd+pos, strlen(prd)-pos);
	ibegin = atoi(s_begin);
	iend =  atoi(s_end);
	
	if( num>=ibegin && num<=iend )
		return 1;
	else
		return 0;
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章