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

поиск с конца - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Как открыть файл одновременно для чтения и для записи? http://www.cyberforum.ru/cpp-beginners/thread783081.html
Делаю вот так, но ничего не получается.:( std::fstream inOutCredit("credit.dat", std::ios::ate | std::ios::binary); if (!inOutCredit) { std::cerr << "Ошибка открытия файла credit.dat." <<...
C++ Умножение матриц не могу разобраться с умножением трех матриц, написал программу считает не правильно ошибку найти не могу уже мозг кипит :) #include <stdio.h> #include <conio.h> #include <iostream.h> #include... http://www.cyberforum.ru/cpp-beginners/thread783075.html
C++ Массив: Написать функцию, которая меняет значения диагональных элементов матрицы на значения соответствующих элементов заданного одномерного массива
Очень нужна ваша помощь!!!!! Написать функцию, которая меняет значения диагональных элементов квадратной матрицы на значения соответствующих элементов заданного одномерного массива. Написать...
C++ Программирование разветвляющихся алгоритмов (Вычислить стороны параллелограмма)
Помогите пожалуйста Решить задачу на языке С++ . Вычислить стороны параллелограмма с диагоналями с=7,13м и d=5,625м если угол между ними равен 110 градусов 15 минут.Написать универсальную программу...
C++ Разделение произвольного текста на слова http://www.cyberforum.ru/cpp-beginners/thread783052.html
Пытаюсь разделить произвольный текст на отдельные слова. И присвоить каждое слово элементу структуры. Но когда программа проходит первую строчку текста появляется ошибка, неизвестная мне. Вот...
C++ Модулярная Арифметика (Создать функцию для решения поставленной задачи) Помогите решить задачу: Создать функцию без использования рекурсии для решения поставленной в варианте задачи и использовать в программе. 1) a*x≡b mod n подробнее

Показать сообщение отдельно
Schizorb
509 / 461 / 16
Регистрация: 07.04.2012
Сообщений: 865
Записей в блоге: 1
Завершенные тесты: 1
10.02.2013, 14:33
Для поиска с конца можно rfind использовать. Вроде так.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
#include <string>
 
int main()
{
    std::string str = "file.txt";
    
    std::string::size_type pos = str.rfind('.');
    std::string ext;
    
    if(pos != std::string::npos)
         ext = str.substr(pos + 1, str.size() - pos);
        
    std::cout << ext;
    
    return 0;
}
Находит последнюю точку и создает строку, в которой лежит расширение.
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru