gpt4 book ai didi

c++ - 'strcpy' 错误和警告

转载 作者:行者123 更新时间:2023-11-28 03:57:52 25 4
gpt4 key购买 nike

我收到以下行的“strcpy”错误和警告:

_tcscpy(strCommandLine,_T("MyProgram.exe /param1"));

_tcscpy(strApplicationName,_T("MyProgram.exe"));

不确定为什么我会收到“strcpy”错误或警告,因为我没有使用“strcpy”。与此相关的唯一行是:

LPCTSTR strApplicationName;
LPTSTR strCommandLine;
_tcscpy(strCommandLine,_T("MyProgram.exe /param1")); //warning is on this line
_tcscpy(strApplicationName,_T("MyProgram.exe")); //error is on this line

输出是:

1>c:\documents and settings\X.X\my documents\sandbox\sample.cpp(52) : warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.

1> c:\program files\microsoft visual studio 8\vc\include\string.h(74) : see declaration of 'strcpy'

1>c:\documents and settings\X.X\my documents\sandbox\sample.cpp(53) : error C2664: 'strcpy' : cannot convert parameter 1 from 'LPCTSTR' to 'char *'

1> Conversion loses qualifiers

关于这可能意味着什么的任何想法?

这些是我的标题:

iostream
windows.h
stdio.h
tchar.h
winnt.h

最佳答案

LPCTSTR 表示 const TCHAR 指针。 _tcscpy 的第一个参数需要一个非常量 TCHAR 指针,即 LPTSTR

尝试这样的事情:

TCHAR strApplicationName[2000];
TCHAR strCommandLine[2000[;
_tcscpy(strCommandLine,_T("MyProgram.exe /param1")); //warning is on this line
_tcscpy(strApplicationName,_T("MyProgram.exe"));

PS:即使这样也很可能是不正确的。为我们提供更多上下文(更多相关代码),我们将能够更好地帮助您。

关于c++ - 'strcpy' 错误和警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2692993/

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