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

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

Войти
Регистрация
Восстановить пароль
 
Alex1205
6 / 6 / 1
Регистрация: 14.01.2011
Сообщений: 81
#1

Не вызывается функция по поиску цифр из заданной строки - C++

07.04.2011, 00:42. Просмотров 313. Ответов 1
Метки нет (Все метки)

Никак не могу найти,где ошибка! Вроде все работает, а вот функция по поиску цифр из заданной строки не вызывается..
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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
#include<iostream>
#include<string.h>
#include<stdio.h>
using namespace std;
 //Функция поиска больших символов
void big(char *line)
{
    char *symbols = new char[100];
    int count1 = 0;
 
    strcpy(symbols,"");
    char alfa[2];
    strcpy(alfa,"A");
    do
    {
        strcat(symbols,alfa);
        alfa[0]++;
    }
    while(strstr(alfa,"Z")==NULL);
    while(*line!='\0')
    {
        line=line+strcspn(line,symbols);
        count1=count1+strspn(line,symbols);
        line=line+strspn(line,symbols);
     }
    cout<<" Found big letters : "<<count1<<"\n";
    cout<<"\n\n";
}
 //Функция поиска маленьких символов
void small(char *line)
{
    char *symbols = new char[100];
    int count2 = 0;
 
    strcpy(symbols,"");
    char beta[2];
    strcpy(beta,"a");
    do
    {
        strcat(symbols,beta);
        beta[0]++;
    }
    while(strstr(beta,"z")==NULL);
    while(*line!='\0')
    {
        line=line+strcspn(line,symbols);
        count2=count2+strspn(line,symbols);
        line=line+strspn(line,symbols);
    }
  cout<<" Found small letters : "<<count2<<"\n";
}
//функция поиска цифр
void figure(char *line)
 
{
    char *symbols = new *char[50];
    int count3=0;
    strcpy (symbols, "0123456789");
    
    while (line !='\0')
    {
        if (strpbrk (line,symbols)!=NULL)
        {
            line=line+strcspn(line,symbols);
            count3+=strspn(line,symbols);           
            line+=strspn(line,symbols);
        }
        
        cout<<" Found figures : "<<count3<<"\n"; 
    }   
    cout<<"\n\n";
}
 
//функция для повторения символов
char *double_size(char *line)
{    
    char *res = new char [100];
    char *result_pos;
    result_pos = res;
    char *r = line;
 
    for( r = line; *r != '\0';)
    {      
                 *result_pos = *r;
                result_pos++;
                
                *result_pos = *r;
                result_pos++;
                r++; 
                res='\0';
                cout << " The double symbol size is : " << res << "\n\n";
    }  
    
}
 
void main()
{
char *line = new char [100]; 
cout<<" Please,enter the line :\n>";
cout<<"\n\n";
gets(line);
big(line);
small(line);
figure(line);
double_size(line);
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.04.2011, 00:42
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Не вызывается функция по поиску цифр из заданной строки (C++):

функция по поиску элемента - C++
всем доброго времени суток ))) господа программисты помогите написать функцию const int* find(const int&amp; val, const int* begin,...

Функция извлечения цифр из строки - C++
int fromString( string&amp; s) { istringstream iss(s); int res; iss &gt;&gt; res; return res; } ... long long...

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

Не вызывается функция - C++
Здравствуйте. Не работает условие в цикле. Просто не вызывается функция prior. Как исправить? int prior(char s,char qu) { switch (s)...

Не вызывается функция - C++
Когда код функции находился в главной функции, то выполнялся без нареканий(не считая выскакивания из цикла, если превысить длину входящий...

Функция удаляет из строки заданное количество символов, начиная с заданной позиции - C++
Подскажите, что не так в программе.? Функция удаляет из строки заданное количество символов, начиная с заданной позиции. (При...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
DeadRipper
64 / 70 / 3
Регистрация: 25.06.2009
Сообщений: 244
07.04.2011, 00:57 #2
во первых что сразу бросается в глаза


C++
1
while (line !='\0')

line это указатель, возможно должно быть так

C++
1
while (*line !='\0')
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.04.2011, 00:57
Привет! Вот еще темы с ответами:

Функция доводит длину строки до заданной, вставляя пробелы между словами - C++
Помогите с прогой на С Функция доводит длину строки до заданной, вставляя пробелы между словами

Функция доводит длину строки до заданной, вставляя пробелы между словами - C++
Функция доводит длину строки до заданной, вставляя пробелы между словами. слово может складатса с любых символов идея так считать...

Не вызывается функция GetComputerName - C++
#include &lt;windows.h&gt; #include &lt;iostream&gt; using namespace std; #ifndef _MAC #define MAX_COMPUTERNAME_LENGTH 15 #else ...

Не вызывается дружественная функция - C++
Создал класс, есть дружественная функция: int NOD(int a,int b) { while(b) { a%=b; std::swap(a,b); ...


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

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

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