我在win7系统上使用Visual Studio17来编写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“未定义
发布于 2018-04-16 22:59:45
转到您的项目属性(项目->属性、->配置属性、-> C/C++ ->常规),并在Additional Include Directories字段中添加.h文件的路径。
并确保您的配置和平台是活动的。示例:配置:活动(调试)平台:活动(Win32)。
https://stackoverflow.com/questions/49844064
复制相似问题