我有char *MAC="aa:bb:cc:dd:ee:ff:99"
。 在此字符串中,所有值均爲「十六進制」格式。C轉換MAC地址的字符串操作
如何將它存儲到另一個字符串中,並刪除前兩個數字,最後四個數字應該是這樣的: "ss.ttt.uu.vv"
。
這裏ss是「cc」的十進制數,ttt同樣是「dd」的十進制數。
#define DELIM ":"
int tok(char *str_to_tokenize)
{
// char str_to_tokenize[] = "- Strtok is meant for - breaking up, strings with funny values. + 5";
char *str_ptr;
fprintf(stdout, "Split \"%s\" into tokens:\n", str_to_tokenize);
str_ptr = strtok(str_to_tokenize, DELIM);
for(; str_ptr != NULL ;){
fprintf(stdout, "%s\n", str_ptr);
str_ptr = strtok(NULL, DELIM);
}
return 0;
}
int main()
{
char* buffer="aa:bb:c:dd:ee:ff:gg";
tok(buffer);
return 0;
}
'的strtok()','的snprintf()'。 – 2013-02-23 06:19:46
@ user95711 - 這是值得你有一個bash - 可能會學到一些東西。 – 2013-02-23 06:27:36
我可以將它們溢出,但不知道如何將它們轉換併合併爲小數點 – 2013-02-23 06:42:08