字串轉換為正整數

2021-09-27 08:08:06 字數 1219 閱讀 9710

看了st官方例程的乙個 str2int() 函式,新增了幾行中文注釋。特色之處是將十進位制可能帶k、m的地方作了處理。

/*** @brief  convert a string to an integer

* @param  inputstr: the string to be converted

* @param  intnum: the intger value

* @retval 1: correct

*         0: error

*/uint32_t str2int(uint8_t *inputstr, int32_t *intnum)

// 16進製制字串最多有10個字元外加1個結束符

// 假設:inputstr ="0x12345678"

// 則 inputstr[0] = '0', inputstr[1] = 'x'

// 則 inputstr[2] = '1', inputstr[3] = '2'

// 則 inputstr[4] = '3', inputstr[5] = '4'

// 則 inputstr[6] = '5', inputstr[7] = '6'

// 則 inputstr[8] = '7', inputstr[9] = '8'

// 則 inputstr[10] = '\0'

for (i = 2; i < 11; i++)

// 未到字串結尾

if (isvalidhex(inputstr[i]))

else

}    // for迴圈 結束

/* over 8 digit hex --invalid */

if (i >= 11)

}    // 16進製制的字元處理 結束

else /* max 10-digit decimal input */

else if ((inputstr[i] == 'k' || inputstr[i] == 'k') && (i > 0))

else if ((inputstr[i] == 'm' || inputstr[i] == 'm') && (i > 0))

else if (isvaliddec(inputstr[i]))

else

}/* over 10 digit decimal --invalid */

if (i >= 11)

}return res;

}

字串轉換為整數

class program catch exception ee console.read 轉換類 public class strconverter bool positive true int32 result 0 double tempresult 0 int start 0 while st...

字串轉換為整數

題目 輸入乙個表示整數的字串,把該字串轉換成整數並輸出。例如輸入字串 345 則輸出整數345。分析 這道題儘管不是很難,學過c c 語言一般都能實現基本功能,但不同程式設計師就這道題寫出的 有很大區別,可以說這道題能夠很好地反應出程式設計師的思維和程式設計習慣,因此已經被包括微軟在內的多家公司用作...

字串轉換為整數

字串轉換為整數需要考慮很多種情況,如下 第一種情況 空指標 第二種情況 空字串 第三種情況 空白字元 第四種情況 中間有字母的 int main atoi 函式遇見a就自動停下來了,輸出123 第五種情況 前面有符號的 int main 輸出 12345 第六種情況 前面有空格 int main 輸...