gpt4 book ai didi

c++ - getpid 在 linux 上使用 -std=c++11 作为编译器标志

转载 作者:行者123 更新时间:2023-11-27 22:52:10 26 4
gpt4 key购买 nike

当我使用 -std=c++11 时,我想使用头文件 sys/types.h、unistd.h(C 风格)中的 getpid 函数标志,但在那之后我有:

"function getpid could not be resolved".

是否有某种解决方法或等效功能?

@编辑:

我又检查了一遍,不是flag fault

头.h

#ifndef HEAD_H_
#define HEAD_H_

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

void test();

#endif /* HEAD_H_ */

头.cpp

#include "head.h"

void test()
{
pid_t pid = getpid(); // Function 'getpid' could not be resolved
}

这很奇怪,因为我也在“干净”的项目上进行了测试,完全没有问题。

主要.cpp

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

int main()
{
pid_t pid = getpid();

return 0;
}

看起来我无法从 unistd 获得任何功能,因为

    char* a_cwd = getcwd(NULL,0);

也未解决

最佳答案

#include <unistd.h>
#include <iostream>

int main()
{
std::cout << getpid() << std::endl;
return 0;
}

dgs@dhome:~/Develop/Test2$ g++ -std=c++11 getpid.cpp
dgs@dhome:~/Develop/Test2$ ./a.out
11980

dgs@dhome:~/Develop/Test2$ g++ --version
g++ (Debian 4.9.2-10) 4.9.2

关于c++ - getpid 在 linux 上使用 -std=c++11 作为编译器标志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36332280/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com