CString problem

This is a discussion on CString problem within the C++ Programming forums, part of the General Programming Boards category; Hi! I am working with CString and i got a ptoblem with it. I declared an array of strings: Code: ...

  1. #1
    Registered User
    Join Date
    Oct 2006
    Posts
    5

    CString problem

    Hi!
    I am working with CString and i got a ptoblem with it.

    I declared an array of strings:

    Code:
    char *Regs16[10]={"ax","bx","cx","dx","bp","sp","di","si","cs","ds"};
    
    
    //then I declared:
    
         CString TempStr = ListLines[NumLines-1].Operand;
    
            int NIndexComma=TempStr.Find(',');
    
            CString TempLeft=TempStr.Left(NIndexComma);
    
            CString TempRight=TempStr.Right(NIndexComma);
    
    //Then I started comparisions like this:
    
    if (TempLeft.CompareNoCase(Regs16[i])
    This results in an error ::

    Error 8 error C2664: 'ATL::CStringT<BaseType,StringTraits>::CompareNoCa se' : cannot convert parameter 1 from 'char *' to 'const wchar_t *' c:jayasm\jayasm.cpp 123.

    What is this error and how can I handle it? I am working on 2005visual studio.
    I tried putting a _T and also tried putting an L before the Reg16[i] variable.
    But did not work.

    Thankyou.

  2. #2
    Registered User
    Join Date
    Jan 2005
    Posts
    7,317
    You are building your project with UNICODE defined, so your CString is a wide character based CString. If you did that on purpose, change your array to wchar_t* instead of char* (actually, it should be const wchar_t* or const char*). If you don't want unicode, then change your project settings.

  3. #3
    CSharpener vart's Avatar
    Join Date
    Oct 2006
    Location
    Rishon LeZion, Israel
    Posts
    6,473
    Actually in the MSVC you have macros that provide a way to write a code that will compile both with UNICODE and without it...

    Something like that
    Code:
    const TCHAR *Regs16[10]={_T("ax"),_T("bx")};
    Note - that both the type AND the string should be changed
    The first 90% of a project takes 90% of the time,
    the last 10% takes the other 90% of the time.

  4. #4
    Registered User
    Join Date
    Oct 2006
    Posts
    5
    Thank you.I changed the properties and it works now.I also tried changing the
    way I declared.it is finally working.
    Thanks again.

  5. #5
    Reverse Engineer maxorator's Avatar
    Join Date
    Aug 2005
    Location
    Estonia
    Posts
    2,318
    Windows specific.
    "The Internet treats censorship as damage and routes around it." - John Gilmore

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. WS_POPUP, continuation of old problem
    By blurrymadness in forum Windows Programming
    Replies: 1
    Last Post: 04-20-2007, 06:54 PM
  2. weird CString problem
    By axr0284 in forum Windows Programming
    Replies: 1
    Last Post: 03-18-2006, 03:05 PM
  3. Laptop Problem
    By Boomba in forum Tech Board
    Replies: 1
    Last Post: 03-07-2006, 05:24 PM
  4. Replies: 5
    Last Post: 11-07-2005, 10:34 PM
  5. half ADT (nested struct) problem...
    By CyC|OpS in forum C Programming
    Replies: 1
    Last Post: 10-26-2002, 08:37 AM

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21