如何在C中更改工作目录?

时间:2010-09-07 20:50:08

标签: c linux chdir

chdir可用于常量字符路径(它需要const char *),但不能用于用户输入的路径(因为它们具有类型char *)。有没有办法解决这个问题?

2 个答案:

答案 0 :(得分:8)

chdir可以与任意字符串一起使用。 const修饰符表示它不会修改您的字符串。

答案 1 :(得分:1)

要展开Roman Cheplyaka's answer,类型限定符始终可以添加到指针类型,但不会被删除。这意味着采用const char *参数的函数实际上是说它可以采用char * a const char *(这实际上意味着它承诺不会改变字符串的内容。)

类似地,具有volatile char *参数的函数可以使用char *volatile char *作为实际参数,并且带有const volatile char *参数的函数可以选择char *const char *volatile char *const volatile char *中的任何一个。