gpt4 book ai didi

C++ : cannot convert from 'char *' to 'char []' problem

转载 作者:塔克拉玛干 更新时间:2023-11-03 08:14:37 24 4
gpt4 key购买 nike

我不是 c/c+ 程序员(我知道 delphi),无论如何我试图编译一个用 c++ 编写的程序,我已经将它更改为接受一些参数(一个文件的路径,它在原始代码中是硬编码的) 从命令行,原来的行是

char Filepath[50] = "F:\\mylib\\*.mp3";

我把它改成了

char Filepath[50] = argv[1]; 

但我收到“无法从‘char *’转换为‘char []’”错误,主要功能就像

int _tmain(int argc, TCHAR* argv[], TCHAR* envp[])

我该怎么办??我正在使用 MSVC6。

谢谢

最佳答案

使用:

char *Filepath = argv[1];

argv[1] 已经包含您想要的字符串时,无需为 50 个字符分配空间。此外,您不必决定命令行参数中的最大字符数;该空间已分配给您。

但是请注意,上面的操作不会复制字符串,因此如果您打算修改字符串(可能通过附加扩展名或其他任何方式),那么您将不得不使用strcpy() 或类似的解决方案。在 C 中处理字符串比在 Delphi 中需要更多的手动字符复制工作。

关于C++ : cannot convert from 'char *' to 'char []' problem,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1671728/

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