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

Возвращение функциями указателей - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Проблема с фукнцией. http://www.cyberforum.ru/cpp-beginners/thread50510.html
Доброго времени. Проблема в след: Хочу чтобы в программе при неправильном ответе, через оператор if выводилась функция о неправильном ответе, но не получается ;(. Подскажите пожалуйста. #include <iostream> #include <conio.h> #include <windows.h> char bufRus; char* RusText(const char* text) // Русский текст в окне. { CharToOem(text, bufRus);
C++ Можно ли ввести своё время в формате hh:mm:ss? снова вопрос, можно ли как нибудь ввести своё время в формате HH:MM:SS и потом произвести вычисления над ним http://www.cyberforum.ru/cpp-beginners/thread50494.html
Цвет текста в консоле C++
Кто может подсказать, как в потоке cout вывести текст другим цветом. прбывал подключать <conio.h> textcolor(); почему то не работает???
Шифровальщик данных C++
Нужна прога, которая сможет зашифровать данные и расшифровать...Хочу , чтобы использовались 'a','b','c','d','e','f', 'g','h','i','j','k','l', 'm','n','o','p','r','s', 't','u','v','x','y','z', 'A','B','C','D','E','F',
C++ помогите решить)) http://www.cyberforum.ru/cpp-beginners/thread50442.html
привет всем! помогите решить (x mod3)-1; я новичек и еще много не доганяю если можно распишите с коментариями спс.
C++ Функции С++ Если кому не сложно,дайте пожалуйста комент по этой строке: for(; exp; exp--) что-то не възжаю что она делает Зараннее благодарю. Вот исходник подробнее

Показать сообщение отдельно
easybudda
Эксперт С++
9456 / 5469 / 927
Регистрация: 25.07.2009
Сообщений: 10,495
12.09.2009, 00:39     Возвращение функциями указателей
На самом деле это какая-то нелепая реализация библиотечной функции strstr.

Короче, вот Вам на С с указателями, переделайте на С++ при желании...
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 *strstr(const char *, const char *) */
 
char *strstr(const char *haystack, const char *needle);
 
int main(){
    char *haystack = "one two three";
    char *needle = "two";
    char *badneedle = "four";
    char *found;
    
    if ( (found = strstr(haystack, needle)) != NULL )
        printf("\"%s\" is in string \"%s\"\n", found, haystack);
    else
        printf("string \"%s\" don't contain \"%s\"\n", haystack, needle);
        
    if ( (found = strstr(haystack, badneedle)) != NULL )
        printf("\"%s\" is in string \"%s\"\n", found, haystack);
    else
        printf("string \"%s\" don't contain \"%s\"\n", haystack, badneedle);    
    
    return(0);
}
 
char *strstr(const char *haystack, const char *needle){
    char *h;
    char *n;
    char *p;
    
    for ( h = (char *)haystack; *h; h++ ) {
        p = h;
        n = (char *)needle;
        while ( *p++ == *n++ )
            if ( *n == 0 ) 
                return(h);  
    }
    return(NULL);
}
Добавлено через 18 минут
как-то не сразу дошло... на самом деле там примерно то же самое...

Цитата Сообщение от Golovastik Посмотреть сообщение
while(*p2 && *p2 == *p) //Это неизвестно что делается
это проверка того, что строка sub ещё не закончилась и очередной символ в ней равен символу из строки, в которой sub ищется... Вот у меня эта же проверка:
Цитата Сообщение от easybudda Посмотреть сообщение
while ( *p++ == *n++ )
Цитата Сообщение от Golovastik Посмотреть сообщение
if(!*p2) //Это неизвестно что такое
return start;
это если все символы из sub нашлись в str и sub закончилась (после очередного приращения *p2 == '\0'), вернуть start...
Действительно чуднАя реализация... Что хоть за книжка-то?
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru