C++ 建议对电话号码进行编码生成应用程序电话号码以0开头

C++ 建议对电话号码进行编码生成应用程序电话号码以0开头,c++,visual-c++-2010,C++,Visual C++ 2010,您好,我想知道是否有人可以帮助我,我是一名编程新手,正在尝试编写一个从0开始生成电话号码的程序。网络提供商从0803开始,总共11个号码。我想为市场营销生成一些数字。我得到的错误是,八进制数字无效,但我希望它能工作,所以我不需要自己加零 1. #include iostream 2. #include fstream 3. using namespace std; 4. int main() 5. { 6. long numb = 08030000000; 7. ofstream

您好,我想知道是否有人可以帮助我,我是一名编程新手,正在尝试编写一个从0开始生成电话号码的程序。网络提供商从0803开始,总共11个号码。我想为市场营销生成一些数字。我得到的错误是,八进制数字无效,但我希望它能工作,所以我不需要自己加零

1.  #include iostream
2.  #include fstream
3.  using namespace std;
4.  int main()
5.  {
6.  long numb = 08030000000;
7.  ofstream generated_numb;
8.  for(int i = 08030000000; i < 08040000000; i++)
9.  {
10. generated_numb.open("mtn_numbers.txt");
11. generated_numb << i << endl;
12. generated_numb.close();
13. }
14. while(true){}
15. return 0;
16. }
1#包括iostream
2.  #包括fstream
3.使用名称空间std;
4.int main()
5.{
6.长numb=0803000000;
7.产生的流的数量;
8.对于(int i=0803000000;i<08040000000;i++)
9.  {
10.生成的_numb.open(“mtn_numbers.txt”);

11.出于各种原因,最好将电话号码作为字符串处理

您遇到的错误是,有几种计算机语言使用前导的
0
指示八进制(以8为基数)常量。要写入十进制数,请从数字1到9开始

电话号码通常包含各种标点符号,如
-
。某些电话公司内部号码包含“数字”
A
D
。此外,PBX内的分机号码通常由
x
分隔

(对第一条评论的答复)

这样做可以实现您的目的,因为您的需求是非通用电话号码处理:

FILE *f = fopen ("mtn_numbers.txt", "w");
if (!f)
    fprintf (stderr, "error opening output file\n");
else
{
    for (long n = 0;  n < 10000000;  ++n)
        fprintf (f, "0803%07Ld\n", n);
    fclose (f);
}
FILE*f=fopen(“mtn_numbers.txt”,“w”);
如果(!f)
fprintf(stderr,“打开输出文件时出错”);
其他的
{
对于(长n=0;n<10000000;++n)
fprintf(f,“0803%07Ld\n”,n);
fclose(f);
}

这很简单
C
,在
C++
中效果很好。字符串前缀
0803
后跟格式转换
%07Ld
是中等高级,但这是医生要求的。实际上,有18个数字:
0-9
A-F
,和
*#
。最后两个别名是de>AB
EF
但这取决于您的本地电话系统。(晦涩的电话琐事第98部分;))仍在寻找我被阻止提问的原因,仅在两个问题中。我已阅读常见问题解答,但与我被阻止发布更多消息/问题的原因无关