字符串和整形相互轉換

1、整形轉換爲字符串(itoa)

/****************************************************
*功能  :將整形數據轉換爲字符串
*參數  :data:要轉換的整形數據
*       str :轉換完的字符串保存位置
*返回值:無
*****************************************************/
void intToStr(int data, char *str)
{  
    int flag = 0;  
    char *ptr = str;  

    if(data < 0)
    {  
        flag = 1;  
        data = -data;  
    }
    else if(data == 0)
    {  
        *str = '0';  
        str ++;  
    }
    else
    {
        flag = 0;
    }

    while(data != 0)
    {  
        *str = data%10 + '0';  
        data = data/10;  
        str++;  
    }

    if(flag == 1)
    {  
        *str = '-';//是負數的話,加個符號在末尾  
        *(str+1) = '\0';//字符串結束符
    }
    else
    {
        *str = '\0';
        str--;
    }

    //字符串翻轉
    while(str > ptr)
    {
        *str = *str ^ *ptr;
        *ptr = *str ^ *ptr;
        *str = *str ^ *ptr;

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