请教大家一个问题,请欣赏一下!

l_yutao 2009-04-08 10:26:59
#include <iostream>
using namespace std;

int main()
{
int m=09,n=07;
cout<<m<<' '<<n<<endl;
}
这段代码显示错误为:6:11 C:\Users\liu\Desktop\ceshi.cpp invalid digit "9" in octal constant
m 初始化错误,将其改为 m=9 程序就对了,输出结果为:9 7
这是为什么呢?要是这样的话,n=07 怎么就没事?
我用的是 Dev-C++
...全文
115 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
l_yutao 2010-06-08
  • 打赏
  • 举报
回复
#include <stdio.h>
void main()
{
printf("hello");
}
l_yutao 2009-04-09
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 LemIST 的回复:]
09 0代表使用的是8进制,有效的数字只能是0-7
[/Quote]
哦,明白了,谢了!!
l_yutao 2009-04-09
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 brookmill 的回复:]
错误提示里面的 octal constant 就是8进制数的意思
[/Quote]
啊,知道了,看来我得好好学英语了,谢了啊!!
wangxipu 2009-04-08
  • 打赏
  • 举报
回复
前置0表示八进制

brookmill 2009-04-08
  • 打赏
  • 举报
回复
错误提示里面的 octal constant 就是8进制数的意思
grellen 2009-04-08
  • 打赏
  • 举报
回复
前面加0表示8进制
但八进制中没有8和9这个数所以就出错了
brookmill 2009-04-08
  • 打赏
  • 举报
回复
0开头的是8进制数,自然不能有9
「已注销」 2009-04-08
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 LemIST 的回复:]
09 0代表使用的是8进制,有效的数字只能是0-7
[/Quote]谢了
grellen 2009-04-08
  • 打赏
  • 举报
回复
前面加0表示8进制
但八进制中没有8和9这个数所以就出错了
「已注销」 2009-04-08
  • 打赏
  • 举报
回复
#include <iostream>
using namespace std;

int main()
{
int m=07,n=07;
cout << m << ' ' << n << endl;
}

这样可以。不知道为什么。VC9
LemIST 2009-04-08
  • 打赏
  • 举报
回复
09 0代表使用的是8进制,有效的数字只能是0-7

65,211

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧