gpt4 book ai didi

C++ Win32,未处理的异常访问冲突编写

转载 作者:行者123 更新时间:2023-11-27 23:00:13 24 4
gpt4 key购买 nike

我有以下代码:

    TCHAR szAppName[] = TEXT("HellowWin");

TCHAR *trTemp = L" ";
*trTemp= szAppName[5];

基本上我在这里做的是尝试在 szAPPName 的索引 5 处分配“值”以替换指针 trTemp 表示的值,但我遇到了访问冲突错误。

有什么想法吗?

完整代码如下:

#include <Windows.h>
#include <stdio.h>
#include "stdafx.h"
LRESULT CALLBACK WndProc (HWND, UINT, WPARAM, LPARAM);

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int iCmdShoe)
{
TCHAR szAppName[] = TEXT("HellowWin");

TCHAR *trTemp = L" ";
*trTemp= szAppName[5];
}

最佳答案

字符串文字是只读的。写给他们是未定义的行为。将字符串文字赋值给指针时,应添加 const

const wchar_t *trTemp = L" ";

如果要写入变量,将其声明为数组,以便它保存字符串文字内容的拷贝,因此可写

wchar_t trTemp[] = L" ";

(请明确使用 wchar_t 而不是那些宏。)

关于C++ Win32,未处理的异常访问冲突编写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28471870/

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