我有以下代碼,它比inet_addr快約7倍。我想知道是否有辦法改進它以使其更快,或者是否存在更快的替代方案。這段代碼要求提供一個有效的,以空值終止的IPv4地址,且不帶空格,在我看來,這總是這樣,因此我針對這種情況進行了優(yōu)化。通常,您會進行更多的錯誤檢查,但是如果有一種方法可以使以下操作更快,或者存在更快的替代方法,我將不勝感激。UINT32 GetIP(const char *p){ UINT32 dwIP=0,dwIP_Part=0; while(true) { if(p[0] == 0) { dwIP = (dwIP << 8) | dwIP_Part; break; } if(p[0]=='.') { dwIP = (dwIP << 8) | dwIP_Part; dwIP_Part = 0; p++; } dwIP_Part = (dwIP_Part*10)+(p[0]-'0'); p++; } return dwIP;}
- 3 回答
- 0 關注
- 747 瀏覽
添加回答
舉報
0/150
提交
取消