Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Dream_O
0 / 0 / 0
Регистрация: 07.05.2013
Сообщений: 38
#1

Преобразование части строки типа char в число - C++

05.05.2014, 19:28. Просмотров 482. Ответов 3
Метки нет (Все метки)

Доброго времени суток! Подскажите, как преобразовать строку типа char в число?
Пример: Есть строка с датой в формате чч-мм-гг "05-05-14". Как получить последние 2 цифры? (год)
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.05.2014, 19:28
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Преобразование части строки типа char в число (C++):

Преобразование char в char* или разделить на две строки - C++
Пытаюсь сделать программу под linux. Возникла проблема, описанная в заголовке. Мне нужно разделить строку в char на две по символу ? либо...

Преобразование типа char в тип float - C++
При считывании из файла чисел (каждое число расположено на новой строке, целая часть от дробной отделяется точкой). Использую функцию...

Преобразование строки в char - C++
Здравствуйте, не знаю, как можно преобразовать char в string. Но преобразование необычное. Нужно узнать дату последнего редактирования...

Занести число в переменную, типа char - C++
char a; cin>>a; a=3; Тут при чтении с клавы мы считываем символ , т.е. если я введу 3, то а будет равно 3, а при присваивании а =...

Аргумент типа char (*)[1000] несовместим с параметром типа char** - C++
Здравствуйте! Есть вот такая структура: #define max 1000 struct expr { char s; int index; };

Аргумент типа char** не совместим с параметром типа const char* - C++
Программа должна позволять заносить в структуру данные и выводить на экран информацию о поездах, следующих до определенной станции: ...

3
newbie666
Заблокирован
05.05.2014, 20:55 #2
какой вопрос - такой ответ
C++
1
2
3
4
5
6
7
8
9
char str[8] = {'0','5','-','0','5','-','1','4'};
    
char lastButOne = str[6];
char last = str[7];
 
int year1 = atoi(&lastButOne);
int year2 = atoi(&last);
 
int comleteYear = atoi(&str[6]);
0
alsav22
5426 / 4821 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
06.05.2014, 00:01 #3
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
C++
1
2
3
4
5
6
7
 
    char str[] = "05-05-14";
    int year;
    
    sscanf(str + (strlen(str) - 2), "%d", &year);
    
    cout << year << endl;
Добавлено через 12 минут
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
 
    char str[] = "05-05-2014";
    int year;
    
    char* p = strtok(str, "-");
    for (int i = 0; i < 2; ++i)
    {
        p = strtok(NULL, "-");
    }
    
    sscanf(p, "%d", &year);
    
    cout << year << endl;
Добавлено через 10 минут
C++
1
2
3
4
5
6
7
8
9
10
11
    string str = "05-05-2014";
    int year;
 
    int i = 0;
    if ((i = str.find_last_of('-')) != -1)
    {
        ++i;
        stringstream s(str.substr(i, 4));
        s >> year;
        cout << year << endl;
    }
1
Dream_O
0 / 0 / 0
Регистрация: 07.05.2013
Сообщений: 38
06.05.2014, 17:44  [ТС] #4
alsav22, большое спасибо!
0
06.05.2014, 17:44
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.05.2014, 17:44
Привет! Вот еще темы с ответами:

Добавление в массив типа char * одного элемента типа char - C++
Дан класс Строка, содержащий указатель на char - адрес динамически выделенной для размещения символов строки памяти и длину строки. Нужен...

Преобразование целочисленного представления дробной части числа в действительное число - C++
Как сделать вывод 0 в другой часте числа? Число складывается с 2-х: целое и вещественное, первое допустим 1, 2-е 32, в результате 1.32,...

Удаление символов из строки типа char - C++
Существует ли какая-либо функция для удаления элементов строки char? Или придется &quot;сдвигать&quot; массив в цикле? Может быть есть еще какие-то...

не получается преобразовать дату(как массив типа char) в число... - C++
Из файла считывается дата в виде символьного массива типа char,далее мне нужно преобразовать ее в числовой массив типа int. я пытаюсь...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru