Как читать строку на C

Как читать строку в C. Язык программирования C не предоставляет фактический строковый тип данных. В C строка эмулируется массивом символов, заканчивающимся NULL. Такой массив можно объявить статически или как указатель. Стандартный C предоставляет множество функций для управления массивами символов или строками C. В этой статье основное внимание уделяется функциям чтения из входного потока и файлов. Следуйте этим советам, чтобы узнать, как читать строку в C.

Шаг 1

Разберитесь в основах. Строка C - это массив типа диаграммы. Как и все массивы C, первый элемент имеет индекс 0, а последний - «длина строки минус 1». Обычно компилятор вставляет NULL в последнее место, поэтому строка может содержать «длину строки минус 1». элементы. Null эквивалентен 0x00 в целочисленной форме и '\ 0' в символьной форме. Доступ к элементам осуществляется с помощью оператора «[]». Шаг 2 иллюстрирует эти концепции.

Видео дня

Шаг 2

Добавьте указанную ниже директиву include в любой исходный файл перед использованием функций этого руководства:

#include

Шаг 3

Объявите строку C. В приведенном ниже коде показано объявление с использованием статического метода и метода указателя:

// статическое объявление char str [50] = {0}; // сокращенный способ инициализировать все элементы до 0 // str [49] имеет значение NULL // str имеет емкость для 48 символов // объявление указателем char pStr = NULL; // нет выделения памяти pStr = (char) malloc (50); // это делается с помощью "malloc ()"

Шаг 4

Считайте данные в строку C с помощью функции «scanf ()», которая считывает серию строк, разделенных пробелом, от стандартного ввод и помещает их в адреса, принадлежащие соответствующим ссылочным переменным, в соответствии с форматом нить":

int n; printf ("Введите свое имя и возраст:"); scanf ("% s% d", str, & n); // printf ("Тебя зовут% s, и тебе% d \ n", str, n);

Шаг 5

Поместите данные в строку C с помощью более простой функции «gets ()», которая считывает данные из стандартного ввода только в строку:

printf ("Введите свою фамилию:"); получает (str); printf ("Ваше имя% s \ n", str);

ШАГ 6

Считать данные файла в строку C с помощью "fscanf ()"; эта функция аналогична scanf ():

ФАЙЛ * pFile; pFile = fopen ("myFile.txt", "r"); // предполагаем, что файл существует и содержит данные if (NULL! = pFile) {fscanf (pFile, "% s", str); printf ("Первое слово в файле% s \ n", str); fclose (pFile); }

Шаг 7

Повторите шаг 5, используя «fgets ()», который работает так же, как «gets ()»:

ФАЙЛ * pFile; pFile = fopen ("myFile.txt", "r"); если (NULL! = pFile) {fgets (pFile, str); printf ("Первое слово в файле% s \ n", str); fclose (pFile); }

Вещи, которые вам понадобятся

  • C / C ++ IDE или компилятор C

  • Книга по C, например "The C Programming Language" Брайана У. Керниган

Подсказка

Чтобы узнать больше об упомянутых функциях, посетите веб-сайт C Plus Plus.

Предупреждение

Не пытайтесь скомпилировать этот код. Он предназначен только для демонстрации функций. Это непоследовательная программа и при компиляции выдает ошибки.