itoa()和atoi()函數實現

atoi()函數將數字字符串轉換爲數字,注意符號的判斷。

int my_atoi(char* src)
{
	int sign=1; //符號變量
	int sum=0;
	if('-'==*src)
	{
		sign=-1;
		src++;
	}
	else if('+'==*src)
	{
		sign=1;
		src++;
	}
	while(*src>='0'&&*src<='9')
	{
		sum=sum*10+*src-'0';
	    src++;
	}
    sum=sign*sum;
	return sum;
}

itoa()函數將數字轉換爲字符串,注意加上空字符'\0'。

char* my_itoa(int num)
{
	int sign=1;
	if(num<0)
	{
		sign=-1;
	}
	num=sign*num;
    
	int n=CountNum(num);
	char* s=new char[n+1];
    int k=n;
	s[n]='\0';
	while(num>0)
	{
		s[--n]=num%10+'0';
		num=num/10;
	}
	
	return s;

}

//計算一個整數的位數
int CountNum(int num)
{
	int n=0;
	while(num>0)
	{
		n++;
		num=num/10;
	}
	return n;

}



發佈了62 篇原創文章 · 獲贊 23 · 訪問量 11萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章