2016-11-15 4 views
-1

Итак, у меня есть небольшая строка (char array) в C, и я хотел бы видеть, какие символы там (прописные, строчные, цифры, специальные символы или пробелы ... не так много пробелов, но на всякий случай приходит другая бедная душа и находит это, скажем, пробелы). Первый способ, который пришел на ум, - это то, как это можно сделать в Python, который использует string.digits и string.uppercase и тому подобное, чтобы увидеть, есть ли какой-либо символ в моей строке - это цифра или строчная буква или что-то в этом роде , Тем не менее, я не смог найти то же самое в C.Существующая строка/массив, содержащий разные типы символов в C

Есть ли что-то в стандартных библиотеках C, которые дают мне список (массив/строку) всех прописных или строчных букв или цифр или специальных символов на в таблице ascii? Я посмотрел в <string.h>, но не очень повезло.

+0

Примечание: Я мог бы создать свои собственные строки, но мне было интересно, есть ли в стандартной библиотеке C что-то, что облегчит мою работу. – Deathsbreed

+0

Итак, вы действительно посмотрели, что предоставляет стандартная библиотека C? –

+0

Нет, такой вещи нет. Вы должны написать, если вы сами. –

ответ

0

В C. нет никаких функций «все-все-все». Но есть стандартные функции, открытые через заголовок <ctype.h>, предоставляет различные стандартные функции (декларации), которые вы могли бы использовать для этой цели.

Используя петлю и некоторые из следующих функций, вы можете достичь этого.

#include <ctype.h> 

    int isalnum(int c); 
    int isalpha(int c); 
    int iscntrl(int c); 
    int isdigit(int c); 
    int isgraph(int c); 
    int islower(int c); 
    int isprint(int c); 
    int ispunct(int c); 
    int isspace(int c); 
    int isupper(int c); 
    int isxdigit(int c); 

    int isascii(int c); 
    int isblank(int c); 
0

Есть ли что-то в стандартных библиотеках C, что дает мне список (массив/строка) всех заглавных и строчных букв или цифр или специальных символами в таблице ASCII?

C имеет библиотеку обработки символов, <ctype.h>. Эта библиотека обработки символов (<ctype.h>) включает в себя несколько функций, которые выполняют полезные тесты и манипуляции с символьными данными.

Вы можете проверить несколько тестов по каждому персонажу, используя функции, входящие в библиотеку <ctype.h>.

INT ISBLANK (интермедиат с) ---> Возвращает истинное значение, если с пустой символ, который разделяет слова в строке текста и 0 (ложь) иначе.

INT isdigit (интермедиат с) ---> Возвращает истинное значение, если с цифрой и 0 (ложь) иначе: [Примечание Эта вляется не доступна в Microsoft Visual C++ .].

int isalpha (int c) ---> Возвращает истинное значение, если c - буква и 0 в противном случае.

INT isalnum (интермедиат с) ---> Возвращает истинное значение, если с цифрой или буквы и 0 в противном случае.

INT isxdigit (интермедиат с) ---> Возвращает истинное значение, если с цифрой символ шестнадцатеричной и 0 в противном случае.

int islower (int c) ---> Возвращает истинное значение, если c - строчная буква и 0 в противном случае.

int isupper (int c) ---> Возвращает истинное значение, если c - прописная буква и 0 в противном случае.

INT ToLower (интермедиат с) ---> Если с прописной буквы , ToLower возвращает с как строчной буквы. В противном случае tolower возвращает аргумент без изменений.

INT ToUpper (интермедиат с) ---> Если с строчной буквой, ToUpper возвращает с как прописной буквы. В противном случае toupper возвращает аргумент без изменений.

INT isspace (интермедиат с) ---> Возвращает истинное значение, если с пробельным символов новой строки ('\ п'), пробел (''), форма подачи ('\ е') , возврат каретки ('\ r'), горизонтальная вкладка ('\ t') или вертикальная вкладка ( '\ v') - и 0 в противном случае.

int iscntrl (int c) ---> Возвращает истинное значение, если c является элементом управления и 0 в противном случае.

INT ispunct (интермедиат с) ---> Возвращает истинное значение, если с является печать символ, кроме пробела, цифры или буквы и возвращает 0 иначе.

INT isprint (интермедиат с) ---> Возвращает истинное значение, если с является печать символов, включая пробел и возвращает 0 в противном случае.

INT isgraph (интермедиат с) ---> Возвращает истинное значение, если с является печать символ, кроме пробела и возвращает 0 в противном случае.

Смежные вопросы