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

идентификатор C++ - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.78
Fergok
0 / 0 / 0
Регистрация: 18.04.2013
Сообщений: 2
18.04.2013, 20:11     идентификатор C++ #1
Как можно проверить является ли последовательность символов идентификатором?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.04.2013, 20:11     идентификатор C++
Посмотрите здесь:

Си-идентификатор C++
идентификатор не определен C++
C++ Необъявленный идентификатор
необъявленный идентификатор C++
C++ Идентификатор не определен
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
bgm123
39 / 39 / 16
Регистрация: 29.01.2013
Сообщений: 277
18.04.2013, 23:59     идентификатор C++ #2
А что такое индефикатор вы знаете? Если да, то в чём вопрос?

Добавлено через 5 минут
Вот вам функция проверки. На вход подаётся анализируемая последовательность(строка) символов.

C++
1
2
3
4
5
6
7
8
9
10
11
bool isId(char *ptr)
{
    if(!isalpha(*ptr) && *ptr != '_')
        return false;
    
    while(isalnum(*ptr))
        ptr++;
 
    if(!ptr[0]) return true;
    else return false;
}
Герц
523 / 340 / 4
Регистрация: 05.11.2010
Сообщений: 1,077
Записей в блоге: 1
19.04.2013, 01:38     идентификатор C++ #3
не катит, в идентификаторах могут быть подчеркивания на любых позициях, не только первым символом.
bgm123
39 / 39 / 16
Регистрация: 29.01.2013
Сообщений: 277
19.04.2013, 14:25     идентификатор C++ #4
Цитата Сообщение от Герц Посмотреть сообщение
не катит, в идентификаторах могут быть подчеркивания на любых позициях, не только первым символом.
А вы переделайте, тут ничего сложного.
C
1
2
3
4
5
6
7
8
bool isId(char *ptr)
{
    while(isalnum(*ptr) || *ptr == '_')
        ptr++;
 
    if(!ptr[0]) return true;
    else return false;
}
Tulosba
:)
Эксперт С++
4378 / 3221 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
19.04.2013, 14:56     идентификатор C++ #5
Ещё не забыть ключевые слова выкинуть.
Fergok
0 / 0 / 0
Регистрация: 18.04.2013
Сообщений: 2
19.04.2013, 19:03  [ТС]     идентификатор C++ #6
Цитата Сообщение от bgm123 Посмотреть сообщение
А вы переделайте, тут ничего сложного.
C
1
2
3
4
5
6
7
8
bool isId(char *ptr)
{
    while(isalnum(*ptr) || *ptr == '_')
        ptr++;
 
    if(!ptr[0]) return true;
    else return false;
}
а попроще можно?я только начал изучать.
пробовал вот так

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
char**massiv;//в него записываются данные 
cin>>m;
cin>>n;
massiv=new char*[n];
for ( int i = 0; i < n; i++ )
massiv[i] = new char[m+1];
char mass[20]='0','1','2','3','4','5','6','7','8','9';
for(i=0;i<n;i++)
cin>>massiv[i];
for(int i=0;i<1;i++)
if(strcmp(massiv[i],&mass[20]))
{cout<<"Id no"<<endl;
}
else 
{cout<<"Id yes"<<endl;
}
не работает.
Yandex
Объявления
19.04.2013, 19:03     идентификатор C++
Ответ Создать тему
Опции темы

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