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

Помогите пожалуйста!работа со строками, файлами - C++

Восстановить пароль Регистрация
 
Ирина123
0 / 0 / 0
Регистрация: 29.06.2011
Сообщений: 28
15.10.2011, 15:44     Помогите пожалуйста!работа со строками, файлами #1
Разработайте программу, функция main() которой содержит вызов предложенной стандартной функции обработки строк и вызов пользовательской функции, которая имиттирует действия, соответствующие выбранной стандартной функции. Обращение к элементам строки в пользовательской функции необходимо реализовать через указатели.
Тип возвращаемого функциуй значения, типы аргументов должны совпадать с соответствующими параметрами стандартной функции. Результаты работы вашей версии реализации стандартной функции и самой стандартной функции выведите в файл на диске, а из файла программно выведите на печать и сравните.

вот сама функция:
strspn
size_t strspn( const char*s1, const char*s2);
Функция определяет длину первого сегмента строки s1,содержащего символы из множества символов, входящих в строку s2.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.10.2011, 15:44     Помогите пожалуйста!работа со строками, файлами
Посмотрите здесь:

Помогите пожалуйста со строками в C C++
C++ Работа с файлами и строками
Работа с файлами и строками. C++
C++ Работа с файлами и строками
Работа с файлами и строками C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ree.exe
56 / 56 / 4
Регистрация: 01.08.2011
Сообщений: 141
15.10.2011, 19:15     Помогите пожалуйста!работа со строками, файлами #2
Вот твоя реализация функции
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
size_t my_strspn(const char* Xstr, const char* Ystr)
{
    size_t i=0,a=-1;
    const char * pX = Xstr;
    bool f=false;
 
    while( *(pX)!='\0' &&  i!=strlen(Ystr) )
    {
        i=0;
        const char * pY = Ystr;
        while( *(pY)!='\0' && *(pX)!=*(pY))
        {
            if(*(pX)==*(pY))
            {
                f=true; 
            }
            else
            {
                i++;
                pY++;
                f=false;
            }
        }
        pX++;
        a++;
    }
 
    return ( a+1==strlen(Xstr) && f==false)? a+1 : a;
}
Добавлено через 17 минут
А ты уверена что тебе нужна функция strspn, а не strcspn
Ирина123
0 / 0 / 0
Регистрация: 29.06.2011
Сообщений: 28
15.10.2011, 19:20  [ТС]     Помогите пожалуйста!работа со строками, файлами #3
Да, в задании сказано strspn, а что?
Ree.exe
56 / 56 / 4
Регистрация: 01.08.2011
Сообщений: 141
15.10.2011, 19:35     Помогите пожалуйста!работа со строками, файлами #4
Цитата Сообщение от Ирина123 Посмотреть сообщение
Функция определяет длину первого сегмента строки s1,содержащего символы из множества символов, входящих в строку s2.
А просто это не вяжется вот с этим:

C++
1
2
3
size_t strcspn (
   сопзЬ сЬаг * str,
   сопзЬ сЬаг * strCharSet
Возвращает целое значение, определяющее длину подстроки в str который полностью состоит из символов в strCharSet .http://msdn.microsoft.com/en-us/libr...y9(VS.90).aspx

Это больше похоже на http://msdn.microsoft.com/en-us/libr...x7(VS.90).aspx
C++
1
2
3
size_t strcspn (
   сопзЬ сЬаг * str,
   сопзЬ сЬаг * strCharSet
Эти функции возвращают индекс первого символа в str , которая находится в strCharSet . Если ни один из персонажей str находится в strCharSet , то возвращается значение длины str.

Не по теме:

Переводил не я, а гугл хром

Ирина123
0 / 0 / 0
Регистрация: 29.06.2011
Сообщений: 28
15.10.2011, 20:03  [ТС]     Помогите пожалуйста!работа со строками, файлами #5
ох уж этот гугл хром...
Ree.exe
56 / 56 / 4
Регистрация: 01.08.2011
Сообщений: 141
15.10.2011, 20:17     Помогите пожалуйста!работа со строками, файлами #6
Все я окончательно запутался Надо передохнуть.
Вот если что код для функции strcspn
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
size_t my_strcspn(const char* Xstr, const char* Ystr)
{
    int i=-1;
    bool f=false;
    const char* pX =Xstr;
 
    while( *(pX)!='\0' && f!=true )
    {
        const char* pY = Ystr;
        while( *pY!='\0')
        {
            if(*pY!=*pX && f!=true)
                f= false;
            else
                f=true;
            pY++;
        }
        i++;
        pX++;
    }
    return (f=false) ? i+1 : i ;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.10.2011, 20:41     Помогите пожалуйста!работа со строками, файлами
Еще ссылки по теме:

C++ Работа с файлами и строками
Работа со строками и файлами C++
Работа с файлами, со строками C++

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

Или воспользуйтесь поиском по форуму:
Ирина123
0 / 0 / 0
Регистрация: 29.06.2011
Сообщений: 28
15.10.2011, 20:41  [ТС]     Помогите пожалуйста!работа со строками, файлами #7
спасибо тебе огромное за помощь!
буду разбираться...
Yandex
Объявления
15.10.2011, 20:41     Помогите пожалуйста!работа со строками, файлами
Ответ Создать тему
Опции темы

Текущее время: 08:07. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru