제가 아래의 소스에서 동적할당을 해볼려고 하는데
변수가 int형인데
int hour,int minute,int second
일때 int hour=19,int minute=1 ,int second=0을 생성자에 대입한건데요
근데 hour변수가 2자리수인데요
이것을 반드시 2로 변환해서 동적할당부분에 넣어야 겠는데...
이게 않되니까 동적할당을 할 수 없네요.
함수나 연산자를 사용해서 int형 hour변수를 2로 변환시킬 방법은 없을까요?
아시는분께서 답변해주시면 좋겠습니다.
#include <iostream>
using std::cout;
using std::endl;
class Time
{
char* str;
public:
~Time()
{
delete []str;
}
Time(int hour,int minute=0,int second=0)
{
str=new char[+1];//수정해야 하는 동적할당 부분
sprintf(str, "%d시%d분%d초\n",hour,minute,second);
}
void ShowTime()
{
printf("%s",str);
}
};
int main()
{
Time time1(19,1);
time1.ShowTime();
}