我有一個工具,稱爲romflasher接受兩個字符串命令行參數的--s-addr0
和--e-addr0
strtoull將基於輸入字符串
romflasher --s-addr0 0x1c40000 --e-addr0 0x1e40000
在我的節目romflasher.c
char s_addr_0[256];
char e_addr_0[256];
uint32_t start_addr = strtoull(s_addr_0,(char**)NULL,16);
uint32_t end_addr = strtoull(e_addr_0,(char**)NULL,16);
這工作得很好,只要因爲用戶指定的地址是十六進制的。我想給用戶選擇以十進制和十六進制來指定它。是否有一個函數會根據pre '0x'
前綴的正確基地?
你不應該類型化NULL,它應該是一個通用的指針。 – 2013-04-04 04:02:02