我使用Perl来搜索和替换多个正则表达式:当我执行以下命令时,我收到一个错误:
prompt> find "*.cpp" | xargs perl -i -pe 's/##(\W)/\1/g' -pe 's/(\W)##/\1/g'
syntax error at -e line 2, near "s/(\W)##/\1/g"
Execution of -e aborted due to compilation errors.
xargs: perl: exited with status 255; aborting
Run Code Online (Sandbox Code Playgroud)
多个-e
在Perl中有效,那为什么这不起作用?这个问题有方法解决吗?
我很难理解下面这段代码:
int stride = 512;
int max_len = 1024 * stride;
char *addr = (char *)malloc(max_len);
for (int i=stride; i<max_len; i += stride)
*(char **)&addr[i-stride] = (char*)&addr[i];
*(char **)&addr[i-stride] = (char*)&addr[0];
Run Code Online (Sandbox Code Playgroud)
看看代码,这似乎是试图创建某种循环链接列表.但我不知道这些演员实际上在做什么.