728x90

구현 4

문자 및 문자열의 split 구현

오늘은 문자 또는 문자열을 split 하는 방법에 대해 설명합니다. 보통 자바스크립트나 자바 등에서는 쉽게 제공이 되지만 C++에서는 직접 구현을 해줘야 합니다. 여러군데에서 설명나온걸 마니 보았지만 실제 업무에서 적용되어서 운영되는 것인지 명확하지 않기 때문에 제가 현재 사용하고 있는 함수를 공개합니다. * 문자단위의 split int Util::Split(LPCTSTR lpszExpression, TCHAR chDelimiter, CStringArray &result) { int nCount = 0; CString strSub; while (AfxExtractSubString(strSub, lpszExpression, nCount++, chDelimiter)){ strSub.TrimLeft(); st..

프로그램/C++ 2021.01.25

C++의 DoModal 구현하기 (다이얼로그)

오늘은 자바스크립트에서 DoModal 을 사용하는 방법에 대해 설명하고자 합니다. C++ 에서는 DoModal 함수가 있어서 Modal 방식의 창을 띄울 수 있는데 자바스크립트에서도 그와 같은 함수가 있습니다. showModalDialog 라는 함수입니다. 이 함수를 좀더 쉽게 다룰 수 있도록 함수화 해서 만든게 있어서 알려드립니다. (IE기준) * 소스코드 // parm_url : 호출할 페이지 // w : 가로크기 (px) // h : 세로크기 (px) function DoModal(parm_url, w, h) { var pop_layer = null; var is_style="edge:raised;center:yes; dialogwidth:"+w+"px; dialogheight:"+h+"px; sc..

자바스크립트에서 mid 함수 구현

오늘은 자바스크립트에서 mid 함수를 소개하겠습니다. 원래 substring 이란 함수가 있지만.. 정확한 바이트 단위의 mid 을 해야할 경우도 있기때문에 아래의 함수를 구현해야 합니다. * 소스코드 function getByteLength( data ) { var str = data; var l = 0; if( str == "") return l; for (var i=0; i 128) ? 2 : 1; return l; return len; } function Mid(str, st, en) { var len = getByteLength(str); var iEnd; if (st len ){ //시작점의 길이가 문자열의 길이보다 짧을..

sprintf, printf 구현하기

오늘은 자바스크립트에서 C++에서 처럼 sprintf 나 print 을 구현해 보겠습니다. 자바스크립트에서는 이런 기능이 없어서 직접 구현을 해주어야 합니다. 이런 부분이꼭 필요한 부분이죠~ * 소스코드 String.prototype.repeat = function(n) { var sRet = ""; for (var i = 0; i < n; i++) sRet += this; return sRet; } String.prototype.format = function(/* ... */) { var args = arguments; var idx = 0; return this.replace(/%(-?)([0-9]*\.?[0-9]*)([s|f|d|x|X|o])/g, function(all, sign, format,..

728x90
반응형