ベースコード:
char *args[3] = {NULL};
args[0] = "ls";
args[1] = "-l";
args[2] = NULL;
なぜだろう:
int execution = execlp("ls", args[0], args[1], NULL);
警告なし、および :
int execution = execlp("ls", args[0], args[1], args[2]);
警告の原因:関数呼び出しにセンチネルがありませんか?
注:両方が同じであることは理解していますが、なぜ一方が警告を発し、もう一方が警告を発しないのかについて興味があります。