今天在VS2017上调试一个文件夹下搜索并给出特定后缀名(.cpp或者.h或者.txt)文件的文件名+路径程序时,需要用到getcwd()函数来获取当前工作路径。但是调试时一直报错“E0020未定义标识符 "getcwd"”。网上说未定义标识符一般是头文件引入不对造成的,对于这种错误#include <unistd.h>,但是按照传统的方式添加完后依旧报错,这就让人产生疑惑了,难道头文件加错了?果然,查了getcwd()函数API后发现,高版本vs函数头文件变成了#include <direct.h>,VS2015(不包括15)以前仍叫getcwd(),更高版本则叫_getcwd()。改完以后再次生成解决方案错误解决。
之前以为是环境变量的问题,往库目录包含目录加了不少东西,走了一段弯路。现在想想文档真是个好东西!!!