Как отрезать начальные цифры? C ++ - PullRequest
4 голосов
/ 22 сентября 2010

Как я могу отрезать первые цифры числа, чтобы отображать только последние две цифры, без использования библиотеки. Например:

1923 до 23

2001 - 01

1234 до 34

123 до 23

только с

#include <iomanip>
#include <iostream>

Спасибо!

Ответы [ 2 ]

8 голосов
/ 22 сентября 2010

Если вы просто работаете с целыми числами, я бы предложил просто сделать мод% 100 для простоты:

int num =2341;

cout << num%100;

будет отображать 41.

А если вам нужен начальный ноль, простоделать:

std::cout << std::setw(2) << std::setfill('0') << num%100 << std::endl;
6 голосов
/ 22 сентября 2010

Если ваши числа в виде int (а не в виде строки), вам следует подумать об использовании оператора по модулю .

Если числа в форме char [], существует простое решение, включающее индексирование в строку, например:

char *myString = "ABCDE";
int lengthOfMyString = 5;
cout << myString[lengthOfMyString - 3]
     << myString[lengthOfMyString - 5]
     << myString[lengthOfMyString - 4];
//outputs the word CAB
...