:错误C2065:'Lcurrent':未声明的标识符

时间:2011-11-05 21:06:41

标签: c++ visual-studio

我想创建一个带有随机变量的程序,然后在屏幕上将其吐出(Windows格式,而不是控制台。)但是当我将变量放入代码时,就会发生这种情况

:错误C2065:'Lcurrent':未声明的标识符

当我将变量更改为Lcurrent时,它说 :错误C2065:'LLcurrent':未声明的标识符

我怎样才能让它接受一个变量来创建一个窗口? 这是背景:

    while (counter < 44){
      current[1] = characters[counter];
      counter ++;
      CreateWindow(TEXT("STATIC"), TEXT(current[1]),
        WS_VISIBLE | WS_CHILD,
        0, 0, 50, 50,
        hwnd, (HMENU) NULL, NULL, NULL);
    }

头文件是:

WINDOWS.H

的字符串

time.h中

2 个答案:

答案 0 :(得分:1)

TEXT只能应用于字符串文字。 current[1]只需TCHAR* / const TCHAR*类型(或TCHAR[] / const TCHAR[])。

答案 1 :(得分:1)

TEXT宏在L前加上参数;它只能用于将ANSI字符串文字"..."转换为Unicode字符串文字L"..."

由于您的current字符串似乎是ANSI,因此请使用CreateWindowA

 CreateWindowA("STATIC", current[1],
    WS_VISIBLE | WS_CHILD,
    0, 0, 50, 50,
    hwnd, (HMENU) NULL, NULL, NULL);

(如果是wchar_t字符串,请使用带有“STATIC”的CreateWindowW;如果是TCHAR字符串,请使用带有当前[1]和TEXT(“STATIC”)的CreateWindow