我在win7系统上使用Visual Studio 17来编写linux的东西。
我的系统通过SSH与Linux机器连接。
当我调试一切正常并且控制台输出正确时。
但是视觉工作室本身给我一个视图语法错误,因为没有找到一些包含库。 ()
我想知道为什么我在构建时会遇到几个错误,但是在调试时运行正常...
除此之外,语法错误非常烦人......
有人知道如何解决这个问题吗?
这是一个示例代码:
#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”未定义
标识符“sleep”未定义
标识符“getpid”未定义
答案 0 :(得分:1)
转到您的项目属性(项目 - &gt;属性 - &gt;配置属性 - &gt; C / C ++ - &gt;常规),然后在附加包含目录字段中添加.h文件的路径。
确保您的配置和平台是活动的。 示例:配置:活动(调试)平台:活动(Win32)。