我有一个字符数组char输入[200];
截至现在的输入有字符串"abc.txt".
我有一个严格需要const char*的方法,如何将我的输入数组转换为const char*.
我尝试了它,然后传递它,但是在使用GDB时,我觉得因为输入中剩下的192个插槽充满了垃圾(或者是空的),所以它不被函数接受.当我将字符串文字"a.txt"传递给它起作用的函数时.所以在这一点上我想从输入数组中提取填充的元素并将其转换为const char*.
我将输入作为用户的文件名,因此我使用char数组来存储输入.
int main()
{
char *name;
char input[1024];
strcpy(input, argv[1]);
name = input;
sys_open(input, "O_RDWR", 00700);
}
Run Code Online (Sandbox Code Playgroud)
Geo*_*rid 10
你应该能够直接传递它.char []可以转换为const char*,但反之亦然.
你在gdb中看到所有垃圾的原因是因为数组没有预先初始化为包含任何东西,所以你只是看到之前的垃圾.只要您的字符串以null结尾,它应该没问题.
| 归档时间: |
|
| 查看次数: |
14118 次 |
| 最近记录: |