丶浅唱 发表于 2015-1-9 22:33:14

C++用VS2013编译问题!

废话不多说直接上代码。
#include<iostream>
using namespace std;
class Cdate
{
public:
        void SetDate(int y, int m, int d);
        int IsleapYear();
        void Print();
private:
        int year, month, day, rn;
};
void Cdate::SetDate(int y, int m, int d)
{
        year = y;
        month = m;
        day = d;
}
int Cdate::IsleapYear()
{
        return (year % 4 == 0 && year % 100 != 0) || (year % 400 == 0);


}
void Cdate::Print()
{
        cout << year << "," << month << "," << day << endl;
}
void main()
{
        int rn;
        Cdate date1;
        date1.SetDate(2015, 01, 10);
        date1.Print();
        rn = date1.IsleapYear();
        if (rn == 1)
                cout << "是闰年" << endl;
         else
                cout<<"不是闰年"<<endl;
        cin.get();
}


    如果我把 上面的   2015,01,10变成2015,01,09就会出现错误, 说什么不是有效的8进

GRRRARD 发表于 2015-1-10 15:45:58

0开头的数字不是8进制的表示法么,你用09可能他就默认是8进制了,直接写9试试

A2395191495 发表于 2015-1-10 16:44:51

楼上说得对

丶浅唱 发表于 2015-1-10 17:12:22

GRRRARD 发表于 2015-1-10 15:45
0开头的数字不是8进制的表示法么,你用09可能他就默认是8进制了,直接写9试试

thank!!

我是火炮 发表于 2015-1-10 20:43:00

这样啊
页: [1]
查看完整版本: C++用VS2013编译问题!