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

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

Войти
Регистрация
Восстановить пароль
 
Анна Лето
0 / 0 / 0
Регистрация: 08.07.2013
Сообщений: 47
#1

Реализация функции strtok - C++

23.12.2014, 20:46. Просмотров 489. Ответов 2
Метки нет (Все метки)

Добрый день.
Мое задание звучит так: изучите поведение функции strtok из стандартной библиотеки.
Реализуйте и протестируйте собственную реализацию такой функции.

Мой код работает неправильно. Подскажите, где ошибки?

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
30
31
32
33
34
35
36
37
38
39
#include <stdio.h>
 
char* myStrtok( char* p, char* delim)
{
    int n = sizeof(p)/sizeof (char);
    int m = sizeof(delim)/sizeof (char);
    bool exit=false;
    char * _p= p;
 
    for( int i=0; i<n; i++)
    {
        for ( int j=0; j<m; j++)
        {
            if( *(p+i)==*(delim+j))
            {   
                p=(p+i);
                *(p+i)=NULL;
                exit=true;
                break;
            }
        }
        if(exit) break;
    }
    return ( exit ) ? _p : NULL;
}
 
int main()
{
char str[] = "My name is Bob";
char* l= myStrtok( str, " ");
 
while (l != NULL)
{
printf ("%s\n", l);
l= myStrtok( NULL, " ");
}
 
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.12.2014, 20:46
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Реализация функции strtok (C++):

Своя реализация strtok - C++
Здравсвуте. Пробовал делать поиск, но почему-то все время просто выдает темы где пишет что такая функция есть. Моя же задача - не используя...

Собственная реализация strtok, стоит ли применить статическую переменную? - C++
Добрый день! Пришла мысль реализовать свою strtok. Хотел проконсультироваться. Следует ли в этой strtok применять статическую...

Использование STRTOK Разбить строку на слова, из слов составить список C++ Функция strtok - C++
Задача Дана строка слов с разделителями, в данном примере слова с пробелами Нужно, используя функцию strtok, сформировать из этих слов...

Использование функции strtok - C++
Помогите разобраться с тремя строками кода которые закомментированы using namespace std; void inp(char); void tok(char, int, char*,...

Как редактировать токены функции strtok? - C++
Всем доброго времени суток! Есть задание, надо в символьной строке найти слова парной длины, добавить к ним с двух сторон символ '%' и...

Сделать упрощенную версию функции strtok() - C++
#include &lt;iostream&gt; using namespace std; char *slova (char s, bool &amp;prodoljat); int main() { char s; bool prodoljat=1;...

2
IrineK
Заблокирован
24.12.2014, 03:36 #2
Цитата Сообщение от Анна Лето Посмотреть сообщение
C++
1
int n = sizeof(p)/sizeof (char);
Это всегда равно 4.
0
MrGluck
Модератор
Эксперт CЭксперт С++
7800 / 4844 / 754
Регистрация: 29.11.2010
Сообщений: 13,211
24.12.2014, 13:35 #3
Цитата Сообщение от IrineK Посмотреть сообщение
Это всегда равно 4.
Стандарт не регламентирует размер указателя.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.12.2014, 13:35
Привет! Вот еще темы с ответами:

Объяснить назначение и нюансы работы функции strtok() - C++
Что делает это? for (char *p = strtok(str, del); p; p = strtok(NULL, del)) а именно ; p; p = strtok(NULL, del))

Реализация функции c++ - C++
Программа: #include &lt;iostream&gt; using namespace std; struct Node { int data; Node* next; };

реализация ThreadSafe функции - C++
Пишу статическую библиотеку функций, на основе которой разрабатывают приложения. При создании многопоточных приложений на её основе...

Реализация friend функции - C++
Есть код. Нужно реализовать вывод ответа через friend. Подскажите пожалуйста как это сделать? Ничего не получается... #include &lt;iostream&gt;...


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

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

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