메뉴 건너뛰기

창작에 관련된 질문이나 간단한 팁, 예제를 올리는 곳

str_list1[loop_v]가 존재하면 true, 안 존재하면 false 이런 감별이 필요한데

CString str_list1[] = {"","","웹디자인","3D그래픽스"};
 int loop_v = 0;
 while(str_list1[loop_v])
 {
  this->m_ctrl_combobox1.AddString(str_list1[loop_v]);
  this->m_ctrl_listbox1.AddString(str_list1[loop_v]);
  loop_v += 1;
 }

저렇게 하면 에러가 뜨더군요
저기서 볼드체로 쓰인 str_list1[loop_v]를 str_list1[loop_v] != NULL로 바꿔봤더니
또다른 에러가 뜹니다.

...
해결책좀...
배열은 마지막에 NULL 문자가 쓰인다는 걸로 알고 있는데, 아닌가염? ㅡ.ㅡ;;

아, 그리고 저건 MFC 다이얼로그 소스 중 일부입니다(큰 상관은 없지만)
조회 수 :
3818
등록일 :
2008.12.21
19:12:33 (*.50.69.16)
엮인글 :
게시글 주소 :
https://hondoom.com/zbxe/index.php?mid=study&document_srl=272338

똥똥배

2008.12.21
19:24:23
(*.22.20.158)
지금 str_list는 CString* 형입니다. str_list1[loop_v]는 CString형이고요.
미스릴님이 원하는 결과를 얻는 방법은 두가지.

1.
CString 멤버함수 중에서 안에 값이 있는지 없는지 감별하는 게 있을 겁니다. 그걸 쓰세요.

2.
CString을 char*로 바꾼 뒤 while(str_list[loop_v]) 부분을 while(str_list[loop_v][0])로 하시면 될 겁니다.

List of Articles