簡體   English   中英

VS17 SSH Linux unistd.h

[英]VS17 SSH Linux unistd.h

我在win7系統上使用Visual Studio 17對Linux進行編程。

我的系統通過SSH與Linux計算機連接。

當我調試時,一切運行正常,控制台輸出正確。

但是由於找不到一些包含庫,Visual Studio本身給了我一個視圖語法錯誤。 ()

我不知道為什么我在構建時會遇到一些錯誤,但在調試時運行良好...

除此之外,語法錯誤非常煩人。

有人知道如何解決嗎?

這里是一個示例代碼:

#include <unistd.h>
#include <sys/types.h>
#include <stdio.h>
#include <stdlib.h>

static int global_var = 1;
int main(void) {
    pid_t pid;
    int lokal_var = 1;
    switch (pid = fork()) {
    case -1:
        printf("X");
        break;
    case 0:
        sleep(1);   /* Kurze Pause */
        printf("X (%d) ---\n", getpid());
        printf("X = %d X : %p\n",
            global_var, &global_var);
        printf("X  = %d X ; %p\n",
            lokal_var, &lokal_var);
        fflush(stdout);
        ++global_var;
        ++lokal_var;
        printf("--- X (%d) ---\n", getpid());
        printf("global_var = %d X : %p\n",
            global_var, &global_var);
        printf("X  = %d X ; %p\n",
            lokal_var, &lokal_var);
        fflush(stdout);
        break;
    default:
        printf("--- X (%d) ---\n", getpid());
        printf("global_var = %d X : %p\n",
            global_var, &global_var);
        printf("lokal_var  = %d X ; %p\n",
            lokal_var, &lokal_var);
        fflush(stdout);
        sleep(2);
        printf("--- X (%d) ---\n", getpid());
        printf("global_var = %d X : %p\n",
            global_var, &global_var);
        printf("lokal_var  = %d X ; %p\n",
            lokal_var, &lokal_var);
        fflush(stdout);
        break;
    }
    return EXIT_SUCCESS;
}

錯誤:

無法開源“ uinstd.h”

標識符“ fork”未定義

標識符“睡眠”未定義

標識符“ getpid”未定義

轉到項目屬性(項目->屬性->配置屬性-> C / C ++->常規),然后在“其他包含目錄”字段中將路徑添加到.h文件。

並確保您的配置和平台處於活動狀態。 示例:配置:Active(Debug)平台:Active(Win32)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM