【发布时间】:2009-04-04 21:07:21
【问题描述】:
对不起,不知道 Length 是在构建时计算的!!
我有 200 个字符长的字符串 A,5 个字符的长字符串 B 如果我这样做了
int Al = A.length;
int Bl = B.length;
然后比较一下——一切看起来都很好但是如果我这样做几百万次 计算一下,对于我需要的东西来说太贵了。
更简单、更整洁的方法是一些可以比较两个字符串并告诉我另一个字符串何时至少与另一个字符串相同的函数。 类似 (compare_string_lengths(stringA,stringB) -> 其中字符串 B 必须至少与字符串 A 一样长(字符)才能为函数返回 TRUE。
是的, 我知道该函数不知道哪个字符串更短,但是如果两个字符串的长度将并行计算,那么当一个字符串超过另一个时,函数就知道要“回答”什么。
感谢任何提示。
【问题讨论】:
-
你可以删除这个问题,因为它有缺陷的前提使它毫无意义。
-
@Brian:为什么要删除?这可能对遇到同样问题的人有所帮助。
-
您是否使用了分析器?问题可能出在字符串创建/复制中,例如在连接时。如果没有进一步的代码/分析,这很难说。