是否可以将cppcheck配置为在C代码中满足以下条件:
void test1() {
char *strp = "my string";
flist *flistp = create_flist();
flist_put(flistp, strp);
destroy_flist(flistp);
}
flist_put所做的工作是将strp转移并将内存所有权转移到flistp(稍后,destroy_flist会负责释放该内存)。在上面的代码中,问题在于flist_put无法使用,因为内存属于test1()范围。必须使用flist_set代替,这将代替strp。
注意-以下所有都是封闭源函数: