你好,我想知道是否有人可以在这里帮助我,我是编程新手,正在尝试编写一个程序来生成从 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. }
最佳答案
出于各种原因,最好将电话号码作为字符串处理。
您遇到的错误是几种计算机语言用前导 0
表示八进制(基数 8)常量。要写十进制数,请从数字 1 到 9 开始。
电话号码通常包含各种标点符号,如.
,
-
(
and )
对于初学者。某些电话公司内部号码包含“数字”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);
}
关于c++ - 关于编码电话号码生成app电话号码以0开头的建议,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10239918/