我想知道 - 在Android上开发其他本机库时,android库提供的功能有多“安全”? 有像微软的strsafe.h或bstring这样的东西吗?或者可以移植那些?
答案 0 :(得分:1)
通常可以使用安全的不安全函数变体来确保在引入难以检测的错误之前检测和处理任何操作问题,这些错误仅在后面的执行中发现。如果我正确地理解了你的问题,你可能想要用snprintf代替printf,strncat而不是strcat,并在创建遵循“成功或死亡”约定的字符数组时使用malloc的变体。
我在使用C for Android编码时发现这些参考有用(我知道原生库缺少一点)。
http://www.cplusplus.com/reference/clibrary/cstring/
http://en.wikipedia.org/wiki/C_string_handling#Overview_of_functions
使用需要其他信息的变体,例如最大缓冲区大小或触发器容易在发生故障时发现错误通常有助于避免以后可能会遇到麻烦的细微错误。