본문 바로가기

쓰기

제컴이 ㅄ인지
설치할때 ㅄ이 된건진 잘 모르겠는데,

쓰기 갑갑해 미치겠습니다ㅣ -_-;

Visual Studio 2008 SP1입니다.

자주 발생하는 현상이

예를 들어

int j=0;
for(int i=0;i<28;i++)
{
    j+=i;
}

for(int i=0;i<28;i++)
{
   j+=i;
}

_wsprintf(L"%d",j);

요런 코드가 있다면, j값이 어떻게 나올까요?

나오긴 개뿔.
무한루프 -_-+

저것처럼 for문 여러번 돌릴때 똑같이 i 쓰는 부분에서 에러가 나길래 뭔가 살펴봤더니
위의 i가 안 사라지고 위에것이 올라가고 있더랍니다 -_-;
아니 그럴거면 컴파일할때 오류를 뱉으란 말이야 OTL


그리고 이유 모를 현상 -_-;
여기도 좀 간단히 해서...
뭔가 에러가 나길래 아래와 같은 느낌(당연히 같진 않습니다)으로  고쳐봤더니
CString Test()
{
    vector<CString> ar_Text;
    GetTextArray(&ar_Text);
    int nLength=0;
    int i=0; // 이건 위의 이상한 버그 때문에 -_-;
    for(i=0;i<ar_Text.size();i++)
    {
       nLength+=ar_Text[i].GetLength();
    }
    wchar_t * wszTemp = new wchar_t[nLength+2];
    wszTemp[0]=L'';
    for(i=0;i<ar_Text.size();i++)
    {
       lstrcat(wszTemp,ar_Text[i].GetString();
    }
    CString strTemp;
    strTemp.Format("%s",wszTemp);
    delete [] wszTemp;
    return strTemp;
}

....... 에러납니다 -_-+++++++
뭔가 그냥 ~~하면 되는데 왜 저렇게 했지?
하고 물으신다면

그 방법으로 하면 버그가 나길래 그렇게 했습니다.
라고 대답하렵니다.

저기서 왜 튕기나면
nLength에 제대로 된 값이 안 담깁니다. -_-;;;;;;;;;;;;;;;;;;
아니 분명 ar_Text[3]=L"o_o";
이렇게 해줬는데
왜 ar_Text[3].GetLength()  했더니 0이 나오고
ar_Text[3].GetString() 하면 제대로 L"o_o" 이 나오냐고요 OTL
저기에서는 당연히 delete할때 에러났습니다 -_-;

그냥 Visual Studio 2005 쓸랍니다 ㅅㅂ
분류 :
Talk
조회 수 :
12867
등록일 :
2009.04.02
22:27:59
엮인글 :
https://arallab.hided.net/4334/785/trackback
게시글 주소 :
https://arallab.hided.net/board_devtalk/4334

아그나스

2009.04.03
01:09:19
그 버그난다는 방법이 혹시..
CString strTemp;
strTemp = "";
for( int i = 0; i < ar_Text[i].size();i++)
{
   strTemp += ar_Text[i];
}
return strTemp;
인가요?

Hide_D

2009.04.03
01:59:16

저거 원래 그런건가요?

기본적으로는
vector하고 wstring, string 조합으로 쓰다가

다이얼로그에는
vector에 CString을 넣어서 했거든요
여태까지 저런 방법(즉 그냥 FixLine)으로 해서 문제가 없었는데 여기서 그러니 좀 난감하네요;

Hide_D

2009.04.03
02:35:56
아 좀 찾아보니 MFC하고 STL하고 원래 좀 안맞는 모양이군요 -_-;
다이얼로그는 MFC쪽 라이브러리만 써서 만들어봐야겠네요 OTL

근데 for(int ) 이건 좀 심했음 -_-;;

Hide_D

2009.04.03
03:44:11
2005에서도 아래의 오류는 동일하게 발생해서
아예 CString대신 wstring으로 대체해서 써버렸습니다.
vector가 CArray보다 아무래도 좋아서 -_-;

그냥 앞으로도 CString 안쓸랍니다 -_-;

아그나스

2009.04.03
21:16:53
음.. 그렇군요... 그런 버그가 날수도있군요.. 생각도 못해봤어요.. 그런식으로 에러 날꺼라고는..
그냥 혹시나하고 여쭤본거였어요.. 크..
List of Articles
번호 제목 글쓴이 날짜 조회 수sort
공지 Talk [필독] 테스트필터 사용시 주의사항 라파에 2008-08-03 155439
429 Talk 웹 계정 아이디/비밀번호 secret Hide_D 2011-01-02 1
428 Talk CustomDic의 동작 방식에 대해서 secret Hide_D 2012-02-14 4
427 Talk 코드정리 목록 + 코드 secret sizukana 2009-01-17 6
426 OtherFiles 아랄코드 정리 txt [2] secret 암흑난무 2008-11-18 27
425 Archive [플러그인] atcode 비정상 문자 출력 픽스 file Wales 2014-02-16 199
424 Talk ATCTNR에다가 Python만 갖다 붙여도...? [1] Hide_D 2016-01-11 279
423 Talk VB.NET에서 ezTransXP.dll사용하는 방법은 없나요? [1] R2D2 2016-06-14 359
422 Archive [플러그인,소스] ATCode, KoFilter2 테스트 버전 140301 [3] file whoami 2014-03-01 439
421 Archive [플러그인,소스] ATCode 테스트 버전 140227 file whoami 2014-02-27 455
420 Archive [플러그인] ATCode 150531 file TwoComet 2015-05-31 470
419 Talk atcode.dll이 출력 못하는 글자를 수집해 봅니다. [2] file Wales 2014-02-05 489
418 Talk 엔드 아랄호환 문제를 모두 수정했습니다 [2] kiereh 2014-04-28 493
417 Archive [실행파일] AralTrans 130710 (7/28일자 부터 포함) file TwoComet 2013-07-10 533
416 Archive [본체] AralTrans.exe ATCTNR.DLL 150622 [4] file TwoComet 2015-06-22 534
415 Talk aralgood.com 도메인 부활... [7] whoami 2014-03-02 566
414 Archive [실행파일] AralTrans 130601 file TwoComet 2013-06-02 577
413 Talk UTF-8이나 유니코드 원활한 필터처리를 위해 생각해봤는데 [5] Wales 2014-06-16 620
412 Talk 스마트 방식과 윈7의 호환에 관한 잘못된 견해 [4] TwoComet 2013-07-06 666
411 Talk 정말 오래간만입니다. [5] Hide_D 2013-05-08 694
410 Archive [플러그인,소스] KiriKiri 테스트 버전 [1] file 미소미소 2014-04-17 707