SPREAD에서 문자를 숫자로 변환하는 방법과 _ttoi() 함수를 활용한 예제 코드

SPREAD에서 문자를 숫자로 변환하는 방법과 _ttoi() 함수를 활용한 예제 코드 

SPREAD에서 문자를 숫자로 변환하는 방법과 _ttoi() 함수 사용 방법

SPREAD의 특정 CELL의 값을 읽어서 정수로 변환하는 과정이다. SPREAD에 문자로 35가 저장되어 있다고 가정하자. 이 문자를 읽어서 숫자로 변환하려면, 문자를 읽고 변환 과정이 필요한다. 이때 사용하는 것이 _ttoi()이다. 이것은 CString 형이 문자를 int 형으로 변환하는 것이다. 이 과정은 다음과 같다. 

  1. 정수를 저장할 변수를 선언한다. (0 ~ 255까지의 숫자가 있다고 가정할 경우, BYTE 형 변수를 사용한다.)
  2. VARIANT 형 변수를 선언한다. 이는 SPREAD에 문자를 읽어 들이기 위한 변수 이다.
  3. VT_BSTR로 문자형이라는 속성을 설정한다.
  4. 문자를 읽어 들여야 함으로 문자를 저장할 수 있는 변수를 선언한다.
  5. 문자형 변수를 선언하고 메모리 할당 작업을 진행한다.
  6. SPREAD의 특정 Cell을 읽어야 함으로 SPREAD 의 Cell를 지정한다. 1 컬럼에 nRow에 해당하는 Cell을 정한다.
  7. GetText()를 이용하여 특정 Cell의 문자를 읽어들인다. 
  8. 문자형 변수에 35라는 값이 읽혀진다.
  9. 35라는 문자를 숫자로 변환하는 것이 _ttoi()이다. 
  10. 변환된 값을 원래 호출된 곳으로 return한다.

샘플 예제 코드

BYTE CDispDlg::GetSpreadValue(int nRow)
{
BYTE btRet = 0;    ///< BYTE 형 변수 선언 (0 ~ 255)
VARIANT Var;       ///< VARIANT 형 변수 선언 (SPREAD Cell 값을 저장)
Var.vt = VT_BSTR;  ///< 문자형이라는 속성 설정
CString sRecv;      ///< 문자를 저장할 변수 선언
Var.bstrVal = sRecv.AllocSysString();      ///< 저장될 변수 메모리 할당 정의
m_spreadSimTelegram.SetCol(1);         ///< SPREAD 에서 읽을 컬럼 선정
m_spreadSimTelegram.SetRow(nRow);  ///< SPREAD 에서 읽을 ROW 선정
m_spreadSimTelegram.GetText(1, nRow, &Var);   ///< SPREAD의 Cell값 읽기
sRecv = Var;                    ///< 문자형 변수에 복사
btRet = (BYTE)_ttoi(sRecv);  ///< 문자를 숫자로 변환
return btRet;                   ///< 변환된 숫자를 RETURN
}

비행기 위탁수하물에 USB 충전식 LED 조명 거울을 부칠 수 있는지에 대한 상세 분석

비행기 위탁수하물에 USB 충전식 LED 조명 거울을 부칠 수 있는지에 대한 상세 분석 항공기 여행 시 위탁수하물로 전자기기(특히 배터리 내장 제품)를 부칠 때는 각종 규정과 제한 사항을 준수해야 합니다. USB 충전식 LED 조명 거울의 위탁 여부는...