C语言路径中能引用变量吗?

如题,比如有一个字符串数组a="abc",我需要路径是d:\\abc.txt,怎么样用变量a来完成路径的输入?... 如题,比如有一个字符串数组a="abc",我需要路径是 d:\\abc.txt,怎么样用变量a来完成路径的输入? 展开
 我来答
金色潜鸟
2014-10-30 · TA获得超过3.2万个赞
知道大有可为答主
回答量:1.3万
采纳率:89%
帮助的人:5748万
展开全部
路径设为字符串变量,你可以用字符串输入和运算改变字符串内容。
char path[100];
gets(path); 可以输入。
=========
char a[]="abc";
sprintf(path,"d:\\\\%s.txt",a);
追问
也谢谢你啦,他比你快一点。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
IMPCKING
推荐于2016-10-04 · 超过21用户采纳过TA的回答
知道答主
回答量:46
采纳率:0%
帮助的人:39.4万
展开全部
#include <stdio.h>

//可以使用字符串格式化命令sprintf 
//将多个字符串链接起来
//函数包含在 <stdio.h>中
//使用和printf基本一样
//只是多了一个char *类型的参数
//指向链接后的字符串所保存的位置 

int main(void)
{
char a[] = "test";
char b1[] = "d:\\";
char b2[] = ".txt";
char loc[50] = {0};//保存连接后的字串,大小随意 
sprintf(loc,"%s%s%s",b1,a,b2);
if(fopen(loc,"w"))
printf("success\n");
else
printf("error\n");
return 0;
}
追问
用strcat函数将字符串连接起来可以吗??
追答

可以的。strcat函数定义是

extern char *strcat(char *dest,char *src);

strcat会把第二个参数src所指向的字串,添加到第一个参数dest的末尾。也就把两个字串连接起来了。但是dest所指向的空间必须能放下src指向的字串。

如果用strcat,只要把上面代码中的sprintf那一句换成:

    strcat(loc,b1);
    strcat(loc,a);
    strcat(loc,b2);

把地址的三个部分依次放进loc中。

本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式