在我的代码上运行Coverity会导致受污染的字符串错误消息.我正在使用堆栈中声明的"path"变量,所以我不确定为什么我会看到错误.我只能认为getenv()直接使用strncpy()是导致错误.下面的修复会消除这个错误吗?
char path[1024] = {NULL, };
if(getenv("A"))
strncpy(path, getenv("A"), strlen(getenv("A")));
Run Code Online (Sandbox Code Playgroud)
至
char path[1024] = {NULL, };
char * adriver = getenv("A");
if(adriver)
strncpy(path, adriver, strlen(adriver));
Run Code Online (Sandbox Code Playgroud) 这可能是一个奇怪的问题,因为约定通常是单独的set和get方法.但在我的情况下,它有点不同:函数的参数决定该函数是getter还是setter,所以我正在寻找一个指示这种函数的函数名.
我发现的一些名字是getset,setget,rw等,但我觉得这些名字很奇怪.什么样的命名约定适合这些功能?