Unreal 강의
6일차 과제
루인엘다
2023. 12. 18. 13:02
문자 표현 방식
abcde ㄱㄴㄷㄹㅁ 등은 인간이 보기 편하게 만든 디스플레이 적인 내용일 뿐이다.
글자에 대한 모든 권한은 OS가 가지고 있다.
그리고 우리가 char을 사용한다고 하면 C++운영체제에게 이거 글자야 글자로 보여줘야해라고 명령하여 어떠한 메모리 영역을 글자로 바꾸어주는 것이다.
즉 글자 => 숫자이다.(정수)
1. char 숫자를 입력받아 int형으로 변환
2. int 숫자를 입력받아 char[]형으로 변
#include <iostream>
int StringCount(const char* _CPtr)
{
int Count = 0;
while (_CPtr[Count])
{
++Count;
}
return Count;
}
int StringToNumber(const char* _NumberString)
{
char Ch = 0;
int StringSize = 0;
StringSize = StringCount(_NumberString);
int Number = 0;
for (int i = 0; i < StringSize; i++)
{
Ch = _NumberString[i];
int Digit = StringSize - i - 1;
int MulTen = 1;
for (int i = 0; i < Digit; i++)
{
MulTen *= 10;
}
Number += (Ch - '0') * MulTen;
}
return Number;
}
void NumberToString(int _Number, char *_Ptr)
{
int DivNumber = _Number;
int SubNumber = _Number;
int DigitCount = 1;
while (DivNumber / 10)
{
DivNumber /= 10;
++DigitCount;
}
int SubDigit = DigitCount;
for (int i = 0; i < DigitCount; i++)
{
int MulTen = 1;
for (int x = 0; x < (SubDigit -1); x++)
{
MulTen *= 10;
}
_Ptr[i] = (SubNumber / MulTen) + '0';
SubNumber -= (_Ptr[i] - '0') * MulTen;
--SubDigit;
}
}
int main()
{
int Number = StringToNumber("32");
char Arr[100] = {};
NumberToString(123123, Arr);
}