gpt4 book ai didi

c++ - 替换文件中的单词

转载 作者:太空宇宙 更新时间:2023-11-04 08:51:00 25 4
gpt4 key购买 nike

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

我只想用 uint64_t 替换单词 unsigned。我不希望像 unsignedFunction 这样的词被 uint64_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)); }

它给了我错误:

error: ‘data’ was not declared in this scope

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

抱歉,这可能不是错字。

最佳答案

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

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

关于c++ - 替换文件中的单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19728113/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com