C\C++ 获取当前路径实例详解

C\C++ 获取当前路径实例详解

获取当前工作目录是使用函数:getcwd。cwd指的是“current working directory”,这样就好记忆了。

函数说明:

函数原型:char* getcwd(char* buffer, int len);
    参数:buffer是指将当前工作目录的绝对路径copy到buffer所指的内存空间, len是buffer的长度。
    返回值:获取成功则返回当前工作目录(绝对路径),失败则返回false(即NULL)。
    该函数所属头文件为<direct.h>

具体使用如下例:(特别注意的是,当你使用的是Linux系统时,请注意你是否具有相关的权限,如果权限不够会导致获取失败)

#include <stdio.h>
#include <direct.h> 

int main()
{
  char *buffer;
  //也可以将buffer作为输出参数
  if((buffer = getcwd(NULL, 0)) == NULL)
  {
    perror("getcwd error");
  }
  else
  {
    printf("%s\n", buffer);
    free(buffer);
  }
}

运行后可返回工作目录的绝对路径…………

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

(0)

相关推荐

  • C++实现读取特定路径下文件夹及文件名的方法

    本文所述实例代码主要实现读取给定路径下的所有文件夹名称或所有带后缀的文件名的功能.具体解决方法如下:   主要用到了以下几个头文件(类):io.h, fstream, string.   首先,读取某给定路径下所有文件夹与文件名称,并带完整路径.实现代码如下: void getAllFiles( string path, vector<string>& files) { //文件句柄 long hFile = 0; //文件信息 struct _finddata_t fileinfo;

  • linux C++ 获取文件绝对路径的实例代码

    提供ftp服务时需要获取文件绝对路径,这里记录一下. #include <stdlib.h> #include <stdio.h> #include <limits.h> int main(){ const char *file_name = "filename"; char abs_path_buff[PATH_MAX]; //获取文件路径, 填充到abs_path_buff //realpath函数返回: null表示获取失败; 否则返回指向ab

  • C++用Dijkstra(迪杰斯特拉)算法求最短路径

    算法介绍 迪杰斯特拉算法是由荷兰计算机科学家狄克斯特拉于1959 年提出的,因此又叫狄克斯特拉算法.是从一个顶点到其余各顶点的最短路径算法,解决的是有向图中最短路径问题.迪杰斯特拉算法主要特点是以起始点为中心向外层层扩展,直到扩展到终点为止.Dijkstra算法能得出最短路径的最优解,但由于它遍历计算的节点很多,所以效率低. 算法思想 按路径长度递增次序产生算法: 把顶点集合V分成两组: (1)S:已求出的顶点的集合(初始时只含有源点V0) (2)V-S=T:尚未确定的顶点集合 将T中顶点按递增

  • C++实现查找二叉树中和为某一值的所有路径的示例

    从树的根结点开始往下访问一直到叶结点所经过的所有结点形成一条路径. 打印出和与输入整数相等的所有路径. 例如 输入整数22和如下二元树 则打印出两条路径:10, 12和10, 5, 7. 先序遍历树即可得到结果. 算法: FindPath(BTree * root,int sum,int target,Stack * s) 用来计算,sum为栈中的元素的和,target为目标值. 到达一个节点之后计算当前节点和sum的和,如果为target,输出路径返回,如果大于target,则直接返回,如果小

  • c++查询最短路径示例

    复制代码 代码如下: //shortest_path.c#include<stdio.h>#include<stdlib.h>//用file#include<string.h>//可用gets(),puts()#include"shortest_path.h"#define MAX 32767#define MENU "欢迎进入导航系统!\n==========菜单===========\n0.载入北外地图\n1.建立地图\n2.查询最短路

  • C\C++ 获取当前路径实例详解

    C\C++ 获取当前路径实例详解 获取当前工作目录是使用函数:getcwd.cwd指的是"current working directory",这样就好记忆了. 函数说明: 函数原型:char* getcwd(char* buffer, int len);     参数:buffer是指将当前工作目录的绝对路径copy到buffer所指的内存空间, len是buffer的长度.     返回值:获取成功则返回当前工作目录(绝对路径),失败则返回false(即NULL).     该函数

  • SpringMVC下获取验证码实例详解

    SpringMVC下获取验证码实例详解 前言: 1.用户一开始登录的时候, 不建议出现验证码, 这一点在很多网站上已经体现的很好了, 只有当用户连续输错三次或者以上才会要求用户输入验证码. 2.记录用户输错次数最好不要使用 session 来记录, 因为 session 是跟客户端浏览器会话有关的, 如果用重启浏览器或者换新的浏览器再来登录或者试错, 就是新的回话了, 原来记录的错误次数就失效了. 建议此处采用缓存机制来实现, 简单处理就是采用 Map<用户登录id, 错误次数> 来实现, 如

  • Android全局获取Context实例详解

    Android全局获取Context实例详解 在弹出Toast 启动活动 发送广播 操作数据库 使用通知等等时都需要Context 如果操作在活动中进行是很简单的,因为活动本身就是一个Context对象 但是当逻辑代码脱离了Activity类,此时使用Context就需要一些技巧了: 我们可以定制一个自己的Application类,以便管理程序内一些全局状态信息,比如全局Context 代码如下: public class MyApplication extends Application{ p

  • php源码 fsockopen获取网页内容实例详解

    PHP fsockopen函数说明: Open Internet or Unix domain socket connection(打开套接字链接) Initiates a socket connection to the resource specified by target . fsockopen() returns a file pointer which may be used together with the other file functions (such as fgets(

  • 微信小程序扫描二维码获取信息实例详解

    1.最简单的扫二维码获得信息. 首先,在网上找一个二维码生成网站,生成一个二维码,我用的是草料二维码,随便生成了一个二维码做测试. 就这个. 我搭建的界面如下: 如图可见,点击1中的"点我扫一扫",可以扫二维码,扫错了如2所示,扫对了如3所示."你傻不傻啊?"就是上图的二维码内容. 嗯,大家都不傻. 4是小程序的结构,就是快速模板建立的,index页面里的内容都删空了,替换了新的代码,其中wxss文件没有东西,因为并没有对界面进行设计. 其中index.wxml的代

  • Javascript 使用ajax与C#获取文件大小实例详解

    Javascript ajax实现获取文件大小的方法. 顾名思义,通过JS和Ajax来获取上传文件的大小,在上传之前可以有个判断,对上传的文件有所控制,因为js控制文件大小(JS获取文件大小)有些问题,具体大家试下就知道了,在此整理了一下ajax的获取文件大小的方法,比较好用,再调试过程中,出现了c:/fakepath/ 的错误,也将解决方案罗列在下面,以供大家参考 废话少说,代码如下 JS如下: <script language="Jscript"> function c

  • php curl 模拟登录并获取数据实例详解

    PHP的curl()在抓取网页的效率方面是比较高的,而且支持多线程,而file_get_contents()效率就要稍低些,当然,使用curl时需要开启下curl扩展. 代码实战 先来看登录部分的代码: //模拟登录 function login_post($url, $cookie, $post) { $curl = curl_init();//初始化curl模块 curl_setopt($curl, CURLOPT_URL, $url);//登录提交的地址 curl_setopt($curl

  • jquery与ajax获取特殊字符实例详解

    jquery与ajax获取特殊字符 在用jquery加ajax写的时候,发现如果传进去的数据包含&则无法获取数据而+号的话就会被判定为空,解决办法就是使用encodeURIComponent()函数对要发送的数据进行编码. function ajax() { $val = encodeURIComponent($('#note').val()); $.ajax({ type: 'post', url: 'xxx.php', data: 'txt=' + $val, success: functi

  • Android获取arrays.xml里的数组字段值实例详解

    Android获取arrays.xml里的数组字段值实例详解 比如在arrays.xml里: <!--leo added for KYLIN-496--> <string-array name="reboot_item"> <item>Reboot</item> <item>Recovery</item> <item>BootLoader</item> </string-array&g

  • IOS 获取APP 版本号的实例详解

    IOS 获取APP 版本号的实例详解 看代码的时候看到一句,用于获取.plist文件的版本号 labelVersion.text = [NSString stringWithFormat:@"v%@", [[NSBundle mainBundle] objectForInfoDictionaryKey:(NSString*)kCFBundleVersionKey]]; 比较感兴趣的是后面的参数 kcFBundleVersionKey ,竟然是CFBundle.h已经定于好的属性,下面有

随机推荐