본문 바로가기

쓰기

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

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

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/e3b/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 [필독] 테스트필터 사용시 주의사항 라파에 155439   2008-08-03 2008-12-16 00:03
149 Talk 죄송해요 ㅠ_ㅠ SVN 위치 trunk -> trunk2 로 옮겨주세요. Hide_D 10477   2008-10-01 2009-01-06 01:24
제가 세팅을 잘못한 모양인지 trunk 그 상태로는 도저히 원상 복구가 안되네요 ㅠ_ㅠ 죄송합니다 위치를 trunk에서 trunk2로 바꿔주시면 감사하겠습니다  
148 Talk SVN 말이죠 ㅠ_ㅠ [3] file Hide_D 11128   2008-09-29 2009-01-06 01:24
 
147 Talk [질문] J2kEngine.dll 에관해 이것저것 [3] 호기심맨 16881   2008-09-29 2009-01-06 01:24
회원님들이 올려주신 소스와 답변덕에 더디지만 조금씩 EzTranceXp안에 UserDict.jk 파일 편집프로그램을 완성해 나가고 있습니다. 다시 한번 모든분들께 감사드리고요 (꾸벅) 염치없지만 다시 막힌부분에서 질문 또 올리게 되었습니다. 1. dll 파일에서 함수...  
146 Talk ...? [3] file 북극 12001   2008-09-28 2008-12-30 08:55
 
145 Archive [플러그인] OutRuby 테스트 버전 20080927 [2] file Hide_D 10236   2008-09-27 2008-10-12 03:58
 
144 Talk 으아아앍 SVN [1] Hide_D 10267   2008-09-27 2009-01-06 01:24
구조가 꼬였네요 orz 어쩌지[...]  
143 Archive [플러그인] DivideLine 테스트 버전 20080927 [1] file Hide_D 10926   2008-09-27 2009-01-06 01:24
 
142 Talk 픽스 라인 연기로 인한 임시 대책 Hide_D 10821   2008-09-26 2009-01-06 01:24
본래 목적인 FixLine이 완성이 늦춰지면서 약간 작전을 변경하도록 하겠습니다. FixLine을 완성시키는 것은 유지하고 FixLine을 3개로 쪼갭니다. OutRuby : FixLine의 TextOnly옵션 DivideLine : FixLine의 Base 기능(DCOnly 대체용) FixChar : FixLine의 Add...  
141 Archive [플러그인] DenyWord 테스트 버전 20080924 [1] file Hide_D 10891   2008-09-24 2009-01-06 01:24
 
140 Talk 일단, 옵션창 이렇게 생기면 되나요? file Hide_D 11569   2008-09-22 2009-01-06 01:25
 
139 Talk 조만간 멀티플러그인은 기본 기능으로 흡수시킬까 합니다. 아랄 11346   2008-09-21 2009-01-06 01:25
그리고 ExtTextOut문제를 빨리 해결.. 기리기리 최신 패턴에 대한 업데이트 SVN 저장소 정리하기 등등.. 할게 많군여 ;;  
138 Talk 히데님께 문의 해요! [2] file 라파에 11922   2008-09-21 2009-01-06 01:25
 
137 Archive [플러그인, 소스] DenyWord 테스트 버전 20080921 file Hide_D 13927   2008-09-21 2009-01-06 01:25
 
136 Archive [플러그인, 소스] DenyWord 테스트 버전 20080917 file Hide_D 9665   2008-09-17 2009-01-06 01:25
 
135 Talk 하루카 원문 [1] 나는누구인감? 10337   2008-09-16 2008-09-17 01:00
원문  
134 Archive [플러그인, 소스] CustomScript 테스트 버전 Archive(09.21 02:50갱신) [1] file Hide_D 17632   2008-09-15 2009-01-06 01:57
 
133 Archive [플러그인, 소스] OriginalText 테스트버전 [4] file Hide_D 13990   2008-09-12 2009-04-22 11:10
 
132 Archive [플러그인, 소스] FixLine 테스트 버전 Archive2(09.14 12:49갱신) [1] file Hide_D 16618   2008-09-12 2009-01-06 01:57
 
131 Talk DenyWord 변경한 내용입니다 Hide_D 9493   2008-09-11 2008-09-11 23:04
1. 일단 EXACT를 추가했습니다. 정보(옵션버튼), 플러그인초기화부분, DenyWord클래스의 초기화부분이 변경되었고 실제 처리부분에서는 먼저 처리를 해준 다음 if문 대신 루프의 n값을 0으로 고쳐 루프를 돌지 않도록 처리했습니다. 2. 1바이트인지 확인하는 ...  
130 Archive [플러그인, 소스] ATCode 테스트 버전 20080911 [3] file whoami 9210   2008-09-11 2009-01-06 01:01