converting an array of integers to string

后端 未结 5 1746
闹比i
闹比i 2021-01-25 11:23

If I have an array that looks like

int digits[size] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 3, 0, 4}

I want to remove the leading zeros and to d

5条回答
  •  暗喜
    暗喜 (楼主)
    2021-01-25 11:56

    You can use a string stream to convert from any type to string:

    #include  //<-- ALLOWS USE OF std::stringstream 
    const int size = 15;
    
    int digits[size] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 3, 0, 4};
    
    std::stringstream ss;  //<-- DECLARE STREAM
    
    int k;
    for (k = 0; k < size; ++k)
            if (digits[k] != 0)
                    break; //FIND FIRST NON-0 INDEX
    
    for (int i = k; i < size; ++i)
                    ss << digits[i]; //ADD TO THE STREAM s
    
    std::cout<< ss.str() << std::endl; //PRINT STREAM
    

    12304

提交回复
热议问题