0

我有一个非常大的代码,我错误地在其中使用unsigneduint64_t. 由于这个错误,我的代码不适用于大于 4 字节的大值。现在我想纠正这个错误......但我不可能进入每个文件(有 540 个文件)并替换unsigneduint64_t. 是否有一些 linux 命令或一些自动化方法可以为我做这件事。

我只想将 word 替换unsigneduint64_t. 我不希望像这样的词unsignedFunctionuint64_t.

编辑: 当我将其替换为以下形式的功能时:

   static inline unsigned readUint32Aligned(const unsigned char* data) { return toHost(*reinterpret_cast<const unsigned*>(data)); }

转换后的函数为:

   static inline uint64_t readUint32Aligned(const uint64_t char* data) { return toHost(*reinterpret_cast<const uint32_t*>(data)); }

它给了我错误:

错误:未在此范围内声明“数据”

除了我可以做的替换之外,还有什么uint64_t可以用于上述形式的功能的吗?

抱歉,这可能不是错字。

4

1 回答 1

2

使用sed和模式s/\bunsigned\b/uint64_t/g

\b是有趣的一点。在正则表达式中,它匹配单词边界。

于 2013-11-01T13:55:19.977 回答