【发布时间】:2013-05-03 00:27:40
【问题描述】:
我在分配时遇到问题,我必须将时钟的三个变量(int 小时、int 分钟和 bool 下午)转换为方法中的字符串。我尝试将 int 转换为 char,然后用 char 替换每个字符串。如果转换成功与否,该函数假定返回 T/F。这是我目前所拥有的:
class Time
{
private:
int hour;
int minutes;
bool afternoon;
public:
void setHour(int hr);
void setMinutes(int min);
void setAfternoon(bool aft);
int getHour();
int getMinutes();
bool getAfternoon();
bool setAsString(string time);
string getAsString();
Time(void);
~Time(void);
};
和
bool Time::setAsString(string time){
char min = minutes;
char hr = hour;
char hr[0] = time[0];
char hr[1]= time[1];
char min[0] = time[3];
char min[1] = time[4];
char afternoon = time[6];
if ((hourTens > 1) || (minTens > 5)) {
return false;
} else {
return true;
}
}
string Time::getAsString(){
return false;
}
【问题讨论】:
-
查找
atoi和itoa函数 -
我忘了提到我的教授更喜欢我们这样做而不使用那些函数。他想要从头开始
-
让我给你一些提示,然后:1)什么是
'1' - '0'?1 + '0'是什么? 2)/ 10除以 10,% 10得到除以 10 得到的余数(例如,单位列中的任何内容)现在您知道足以解决问题了。 -
'1' - '0' = '1' and 1 + '0' = ascii code 对吧?至于/10,我不确定这对我有什么帮助。我是 C++ 新手。这样做会让我更接近我的目标,这基本上是教授想要的(将给定的 int(例如 09)交换成给定的字符串(例如上午 00:00),但我不知道该怎么做:
int intday = 15; string strDay = "00"; char day = intday + '0'; strDay[1] = intDay[1]; -
没有。
'1' - 0是'1'但'1' - '0'不同。
标签: c++