<

알파벳 대소문자, 숫자를 포함한 랜덤한 문자열을 생성하는 함수



출처는 StackOverflow

void gen_random(char *s, const int len)
{
	static const char alphanum[] =
		"0123456789"
		"ABCDEFGHIJKLMNOPQRSTUVWXYZ"
		"abcdefghijklmnopqrstuvwxyz";

	for (int i = 0; i < len; ++i) {
		s[i] = alphanum[rand() % (sizeof(alphanum) - 1)];
	}

	s[len] = 0;
}

여기에 문자 중복이 안되게끔 하거나, 특수문자를 추가하는 방법도 고려해봐야겠다.


MFC에서 ComboBox(콤보박스) 사용시 사용자가 임의적으로 항목을 수정할 수 있다.


물론 수정된 값을 받는 경우도 있지만, 해당 선택된 항목의 index값을 가져와서 쓰는경우 매개변수가 잘못되었다는 등의 오류가 발생 할 수 있다.


사용자가 수정할 항목이 아닌 경우라면 이를 ReadOnly로 바꿔줄 필요가 있다.


ReadOnly 설정은 따로 코드를 수정하는 경우도 있지만, 간단하게 해당 리소스 속성항목에서 


Type를 "Drop List"로 바꿔주면 된다.


아래는 Reference에 나와있는 Style Type별 상태

StyleWhen is list box visibleStatic or edit control
SimpleAlwaysEdit
Drop-downWhen dropped downEdit
Drop-down listWhen dropped downStatic


  • a : 배열 (Array)
  • b : BOOL 형 변수 (Boolean)
  • by : BYTE 형 변수 (Byte, = unsigned char)
  • c : 카운터 변수 (Counter, = int)
  • cb : 바이트의 개수
  • ch : char형 변수 (Character, = char)
  • cx : X 좌표용 변수 (Coordinate X Value, = int)
  • cy : Y 좌표용 변수 (Coordinate Y Value, = int)
  • d : 날짜형 변수 (CDate)
  • dbl : double형 변수 (Double, = double)
  • dw : Unsined Long (DWORD)
  • f : BOOL 형 변수 (Flag)
  • h : 핸들형 변수 (Handle, = HANDLE)
  • n : 자연수형 변수 (Natural Number, = int)
  • i : 정수형 변수 (Integer, = int)
  • i : 인덱스 (Index)
  • l : long형 변수 (Long, = long)
  • m_ : 특정 클래스의 멤버 변수 (Member Variable)
  • p : 포인터 변수 (Pointer, = [type]*)
  • lp : long/far 포인터 변수 (Long/Far Pointer)
  • 32비트 프로그래밍에서는 일반 수준의 포인터로 취급함
  • 16비트 프로그래밍에서는 먼 거리의 포인터로 취급함
  • s : 문자열 (String)
  • sz : NULL (= \0)로 끝나는 문자열 (String)
  • u : 자연수 중 양수형 변수 (Unsigned Integer, = unsigned int)
  • w : WORD형 변수 (Word, = unsigned short)
  • dw : DWORD형 변수 (Double Word, = unsigned long)
  • str : CString형 변수 (String)
출처 : http://unidri.tistory.com/38


'Programming' 카테고리의 다른 글

[C++/MFC] Screen Capture  (0) 2016.06.13
fatal error C1004: unexpected end of file found 에러 뜰 때  (0) 2016.01.07
c/c++ 접두어  (0) 2016.01.06
CString Format함수 에러  (0) 2015.12.30
C++ String 정리 (C++ 문자열)  (0) 2015.12.28
[MFC] 그리드컨트롤 체크박스 사용  (0) 2015.10.28

출처 : http://wwwi.tistory.com/132 


탭 순서는 Tab키를 눌렀을 때 선택된 커트롤에서 다음 컨트롤로 이동하는 순서이다.

VB에서는 프러퍼티에서 TabIndex를 바꾸면 각 컨트롤의 탭순서를 바꿀수 있다.

각 컨트롤에서 Tab으로 이동할찌 안할찌는 Tabstop속성으로 정한다.


탭순서를 MFC에서 변경할 때는 탭 순서를 지정할 다이알로그를 선택하고 


    메뉴의 서식에서 탭순서를 선택하거나

    Ctrl + D를 누른다.



+ Recent posts