gpt4 book ai didi

c - 如何在 C 中将 char[] 转换为 char*?

转载 作者:行者123 更新时间:2023-11-30 18:19:19 25 4
gpt4 key购买 nike

这个问题很简单。如何在 C 中将 char[] 转换为 char*?我真的很难找到解决方案。因此,非常感谢您的帮助:)

这就是我需要这个的原因:

sprintf(name,"%c%c%%HACKED%c%c.virus",a,b,c,d); // print a formatted text to string (char[])
strcat(buffer,currentPath); // currentPath is of data type char[]
strcat(buffer,"\\");
strcat(buffer,name); // Now this is where the problem comes in. Since strcat function needs a const char* for it's second argument.

printf("%s",name);

最佳答案

您无需执行任何操作。数组会自动衰减为指针,因此您的代码看起来不错。

在第一次调用 strcat() 之前,您确实需要确保 buffer 以有效的、以 NUL 结尾的字符串开始。它还需要是可写的(例如,它不能是指向字符串文字的指针)。

您还需要确保缓冲区没有溢出。我建议您查看strncat() .

关于c - 如何在 C 中将 char[] 转换为 char*?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9007066/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com