程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C >> C語言基礎知識 >> 解析c語言中"函數調用中缺少哨兵"的情況分析

解析c語言中"函數調用中缺少哨兵"的情況分析

編輯:C語言基礎知識

在寫一個練習時候出現的.覺得奇怪,因為翻譯說缺少哨兵??什麼意思呢...
=====================================
代碼如下:

/*
//練習如下,創建一個進程
*/
#include <unistd.h>
#include <stdio.h>
#include <stdlib.h>

int main(void)
{
   printf("Running ps with execlp\n");
   execlp("ps", "ps", "-ax", 0); /*<----錯誤出現所在行,更改方法.把0 改成 (char *)0 即可*/
   printf("Done.\n");
   exit(0);
}

================================
pexec.c: 在函數‘main'中:
pexec.c:8: 警告: 函數調用中缺少哨兵
-----------------------------------------------------------
顯然中文是不能搞清楚的.
切換到英文看看:輸入export LANG=POSIX
然後再次看看
---------------------
pexec.c: In function 'main':
pexec.c:8: warning: missing sentinel in function call
---------------------------------------
百度到CU發現有人提出一樣的問題:

結論是:
占用內存的時候 內存區域兩端值不確定 所以會提示 需要兩邊哨兵 站崗. 說白了就是初始化!

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved