Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Ввод по типу... на Си

379
12 марта 2005 года
Fima
109 / / 07.11.2002
Народ, помогите написать две ф-ции на Си.
Ф-ция: Ввод по типу поля, т.е. либо буквы, либо цифры. Определяется тип по первому введенному символу(цифра/буква).
Ф-ция: Очистка поля. На подобии clreol, только стирает всю строку с начала строки, а не от позиции курсора.
425
15 марта 2005 года
sq_deep
498 / / 18.02.2005
Цитата:
Originally posted by Fima
Народ, помогите написать две ф-ции на Си.
Ф-ция: Ввод по типу поля, т.е. либо буквы, либо цифры. Определяется тип по первому введенному символу(цифра/буква).

Замучаетесь такую функцию писать. Например, ответьте, пожалуйста, на вопрос: а какой будет тип её возвращаемого значения? Только COleVariant на ум приходит...

Цитата:
Originally posted by Fima
Ф-ция: Очистка поля. На подобии clreol, только стирает всю строку с начала строки, а не от позиции курсора.

Установите курсор в начало строки, потом вызовите вашу clreol. [COLOR=silver]Только вот MSDN ничего про clreol не знает. Я её только в Borland Pascal v7 встречал...[/COLOR]

379
15 марта 2005 года
Fima
109 / / 07.11.2002
Цитата:
Originally posted by sq_deep
Замучаетесь такую функцию писать. Например, ответьте, пожалуйста, на вопрос: а какой будет тип её возвращаемого значения? Только COleVariant на ум приходит...
[/COLOR]


Мне эта ф-ция нужна под ДОС! => я думаю, что ф-ция будет типа void. Есть предложения?

425
15 марта 2005 года
sq_deep
498 / / 18.02.2005
Цитата:
Originally posted by Fima
Мне эта ф-ция нужна под ДОС! => я думаю, что ф-ция будет типа void. Есть предложения?

Fima, функция типа void Вам ничего не сможет вернуть. Даже под ДОС.

Почитайте внимательно про void и объясните, какая функция Вам конкретно нужна. По Вашему описанию никто ничего умного Вам посоветовать не сможет. Искренне сожалею.

379
17 марта 2005 года
Fima
109 / / 07.11.2002
Кажется я понял, что от меня хотят:).
Да, не совсем правильно выразился.
Ф-ция считывает символ с клавы и если это цифра, то дальше можно вводить только цифры; если это буква - буквы.
Вот, теперь я думаю ясно. Да?
425
21 марта 2005 года
sq_deep
498 / / 18.02.2005
Код:
#include <stdio.h>
#include <conio.h>

void get_with_filter()
{
    printf("Enter chars: ");
    int nState = 0;     // unknown state
    for (;;)
    {
        int ch = getch();
        if (ch == '\r')
            break;      // ENTER pressed; exit function
        switch (nState)
        {
        case 0:     // unknown state
            if (isalpha(ch))
                nState = 1;     // state: letters
            else if (isdigit(ch))
                nState = 2;     // state: digits
            else
                ch = '\a';      // can't determine the state; change to 'alarm'
            break;
        case 1:     // state: letters
            if (!isalpha(ch))
                ch = '\a';      // not a letter; change to 'alarm'
            break;
        case 2:     // state: digits
            if (!isdigit(ch))
                ch = '\a';      // not a digit; change to 'alarm'
        }
        putchar(ch);
    }
}
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог