【发布时间】:2019-04-14 01:27:23
【问题描述】:
我有一个函数,它有一个字符串参数:
function(char str[3]){
//here i want to insert the string Parameter str
f = open("/d1/d2/d3/test"+str+"/d2.xyz")
}
我正在尝试将字符串参数“插入”到给定的字符串路径中。如何在 C 中做到这一点?
【问题讨论】:
-
研究
snprintf(buf, sizeof buf, "/d1/d2/d3/test%s/d2.xyz", str). -
请注意,尽管参数定义 (
char str[3]) 建议字符串限制为 2 个字符加上 null,但这不是强制的。该参数被视为您编写了char *str,并且可以提供任何长度 - 包括零字节的字符串。 -
为什么限制为 2 个字符?它不是一个 char 数组,例如:[0,1,2,3] 吗?