Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Help: Строки

20K
10 августа 2006 года
maks1417
1 / / 10.08.2006
Подскажите кто знает, как из строки "вырезать кусок" с n позиции по k позицию.
Помню что как то можно, а как не знаю.
1.9K
10 августа 2006 года
[*]Frosty
278 / / 17.06.2006
библиотека Standart C:
char *strncpy(char *dest, const char *scr, size_t n), т.е. чтобы вырезать N символов, с позиции M:

Код:
//---------------------------------------------------------------------------

[COLOR="SeaGreen"]#include<string.h>[/COLOR] // strncpy
[COLOR="SeaGreen"]#include<stdio.h>[/COLOR]  // printf
[COLOR="SeaGreen"]#include<stdlib.h>[/COLOR] // malloc

const int N = 5;
const int M = 5;
//---------------------------------------------------------------------------

int main(int argc, char* argv[])
{
        char str[] = "Hello word!";
        char *sub_str = (char *)malloc(N + 1); [COLOR="Silver"]// Выделяем память под приемник результирующей строки[/COLOR]
        strncpy(sub_str, str + M, N); [COLOR="Silver"]// Копируем N символов с позиции M[/COLOR]
        sub_str[N] = '\0'; [COLOR="Silver"]// !!! Необходимо закрыть строку[/COLOR]

        printf("%s\n", sub_str);

        getchar();

        return 0;
}
//---------------------------------------------------------------------------


библиотека STL C++:
basic_string substr(size_type pos = 0, size_type n = npos) const;

Код:
//---------------------------------------------------------------------------

[COLOR="SeaGreen"]#include<iostream>[/COLOR] // Работа с потокам cout
[COLOR="SeaGreen"]#include<string>[/COLOR] // тип string

using namespace std;

const int N = 5;
const int M = 5;
//---------------------------------------------------------------------------

int main(int argc, char* argv[])
{
        string str("Hello word!");
        string sub_str;
        sub_str = str.substr(M, N);

        cout << sub_str;

        getchar();

        return 0;
}
//---------------------------------------------------------------------------
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог