学习之compare:c#和c++中各种compare方法

主要比较c#中的string.compare和compareTo,以及c++中的string.compare

  (1).c#的A.compareTo(B):默认使用的排序准则是CurrentCulture。这是一个对程序员来说比较奇怪的顺序,但它代表的是自然语言的顺序,而且结果是和当前系统的区域和语言选项设置相关的。对字母顺序来说,在大多数culture中,顺序大致是aAbBcC...当A>B时返回1,A=B返回0,A<B返回-1.

  (2).c#的string.compare(A,B):和(1)基本相同,所以说为什么File和file,它的返回值是-1了。

  (3).c#的string.CompareOrdinal(A,B):它是先比较对应字符的大小(ASCII码顺序:...ABC...abc...),如果第一个字符和参数的第一个字符不等,结束比较,返回他们之间的差值,依此类推。

  (4).c++的string.Compare(A,B):逐个比较A和B中每个字符的ASCII码值,如果A小于B,则返回-1。

所以说,按照词频统计排序的要求,用ASC码排序,应该使用(3)(4)。

原文地址:https://www.cnblogs.com/linlu1142/p/2702150.html