大数打印问题

来源于剑指offer的大数打印问题:

给定n,如何打印从1到最大的n位整数?

如果n位整数不会溢出,例如n可以被long long表达,那可以简单的解决。如果n很大,无法用单个变量类型进行表达,那就要用其他数据类型来模拟大数的表达,最简单有效的方法是使用字符数组,并在字符数组上模拟整数的加法和进位。

#include<iostream>
#include<string.h>
using namespace std;

class Solution {
public:
  void PrintNumber(int n){
    char* num = new char[n+1];
    memset(num, '0', n);   //将该段内存全部置为'0',初始化
    num[n] = '