什麼意思在字典,相反數字排序字母字符等以K &ř5-14與選項-nK&R - 數字類型的字母字符?
回答
輸入K & R,部分5.11,比較功能
int numcmp(char *s1, char *s2); /* defined on page 121 */
第二版被用於數字排序(相對於使用用於strcmp
字典分類)。 numcmp
調用函數
double atof(char s[]); /* defined on page 71 */
其中將字符串轉換爲它的雙精度等效浮點。
在此示例中,使用-n
命令行參數進行排序是由atof
函數返回的double
值完成的。
練習是5-14 – highlevelcoder 2011-05-17 20:42:44
當然......我相應地編輯了答案。 – mizo 2011-05-17 20:50:43
這意味着治療字符串作爲單個數字值,而不是爲一系列恰巧是數字的字符。 K & R向您顯示僅在練習5-14之上使用的numcmp
函數。它將char*
參數轉換爲double
,並將它們進行數字比較,而不是逐個比較字符串。這樣,該字符串103
被字符串23
後排序因爲103大於23,比較字符串,103
會提前進行排序的23
因爲1
字符代碼爲小於2
字符代碼。
好的,所以我在評論中並沒有太多太過分...... :) – Xeo 2011-05-17 20:22:12
@Highlevelcoder,如果你使用'numcmp',就像書中一樣,你會得到一致的結果,將非數字字符傳遞給'atof '。如果您想以其他方式處理非數字字符,則必須定義所需的行爲並實施它。 – 2011-05-17 20:41:55
我誤讀了你,thx – highlevelcoder 2011-05-17 20:46:58
- 1. 配置單元中字母數字字符的數據類型
- 2. R:刪除字母數字字符串末尾的零字
- 3. 數字字符和字母之間的C++字符比較char
- 4. 字母數字字符串
- 5. 從R中的字母數字列中刪除字符?
- 6. 如何替換R中的多個字母數字字符?
- 7. 混合字符串值的字母數字排序:字母數字字母
- 8. 用PHP中的第n個字母字符替換字符串字母
- 9. R dplyr列與字母數字字符排序
- 10. Membership.generatepassword的字母數字字符僅
- 11. 遞增的字母數字字符串
- 12. URL中的非字母數字字符
- 13. 遞歸性。字母數字字符串中的字母
- 14. 無法將類型字符轉換爲數字R
- 15. 在R中找到字母數字
- 16. 更換給定的字符串以字母在字母表
- 17. [字母數字]的正則表達式建議[字母數字.- _ @] 31個字符
- 18. 如何以字母順序替換字符串中的字母
- 19. 計數的字母總數字符串
- 20. 正則表達式字母數字字符串+特殊字母
- 21. 前後沒有字母數字字符
- 22. 使用非字母數字字符
- 23. 如何檢查字母數字字符
- 24. jQuery - 乘以字母數字字符串
- 25. PHP:轉義非字母數字字符
- 26. Unicode字母數字字符範圍
- 27. 檢查字母數字字符在C#
- 28. RandomStringGenerator生成字母數字字符串
- 29. 字符到數字R
- 30. Retrofit @ java.lang.IllegalArgumentException:@FieldMap鍵必須是字符串類型:K(參數#2)
我的猜測是要對ascii值進行排序,但是如果你只有字母字符(從'a'到'z'和'A'到'Z'),那麼這沒什麼意義,因爲它將相當於他們的字典順序... – Xeo 2011-05-17 20:14:06
什麼是k&r 5-14? – 2011-05-17 20:15:31
@Mohamed,它是由Brian Kernighan和Dennis Ritchie(俗稱K&R)編寫的C編程語言*的第5-14章。這一點已經得到證實,第5-14節是一個練習,指導讀者將'-n'選項應用於第5章所示排序程序中的字段。 – 2011-05-17 20:17:22