在C+;中预先添加所有变量和函数名+;文件 我正在寻找一种方法,将一个单词前缀到C++文件中的所有变量和函数名。

在C+;中预先添加所有变量和函数名+;文件 我正在寻找一种方法,将一个单词前缀到C++文件中的所有变量和函数名。,c++,parsing,prepend,C++,Parsing,Prepend,下面是一个小例子: float myFloat = 3.14159; void loop() { int sensorValue = analogRead(A0); Serial.println(sensorValue); delay(1); } 应该变成 float KEYWORDmyFloat = 3.14159; void KEYWORDloop() { int KEYWORDsensorValue = analogRead(A0); Serial.prin

下面是一个小例子:

float myFloat = 3.14159;

void loop() {
 int sensorValue = analogRead(A0);
  Serial.println(sensorValue);
  delay(1);
}
应该变成

float KEYWORDmyFloat = 3.14159;

void KEYWORDloop() {
    int KEYWORDsensorValue = analogRead(A0);
    Serial.println(KEYWORDsensorValue);
    delay(1);
}
编辑: 我的第一个想法是使用GCC将代码转录成一个抽象语法树,并在替换所有声明等的同时解析文件。
事情失败得很惨,因为我必须在不编译代码的情况下替换名称和函数。

Hm。在vim中获取函数名称很容易::%s/\a*()/关键字和/gc。不确定获取变量名的优雅方式,但是,你可以用变量名替换一个大析取正则表达式,然后使用与上面相同的替换。这看起来不像C++或GCC问题。我认为它可以用LbCulang.AcMo来比较容易地完成。@如果工具的输出需要100%正确,则它是C++特定的。(即,它需要理解C++语法,因此它不将关键字准备到除了变量或函数名之外的其他东西)。