Ввод данных из командной строки - C (СИ)
Формулировка задачи:
не могу понять как ввести данный из командной строки
для вот этого кода нужно ввести в функцию 2 строки
#include <stdio.h>
//индексный
char* strcpy(char* string1, const char* string2)
{
int i=0;
while(string2[i]!='\0')
{
string1[i]=string2[i];
++i;
}
string1[i]='\0';
return string1 ;
}
char* strcop(char* string1, const char* string2)
{
int i;
for (i=0; *(string2+i) != 0; i++)
{
*(string1++)=*(string2++);
}
return string1;
}
int main ()
{
char St1[500]= " Takaya pervaya stroka";
char St2[500]= " Vot takaya vtoraya stroka";
printf ("stroka1: %s\n", St1);
printf ("stroka2: %s\n", St2);
strcpy (St1,St2);
strcop (St1,St2);
printf ("stroka1aftercopy: %s\n", St1);
printf ("stroka2aftercopy: %s\n", St2);
}Решение задачи: «Ввод данных из командной строки»
textual
Листинг программы
void main() {
char str1[100], str2[100];
printf("Str1: ");
gets(str1);
printf("Str2: ");
gets(str2);
}
Объяснение кода листинга программы
- Объявлены две переменные типа char массива: str1 и str2, каждая из которых может хранить до 100 символов.
- Выводится сообщение
Str1:и считывается содержимое в переменную str1 с помощью функции gets(). - Выводится сообщение
Str2:и считывается содержимое в переменную str2 с помощью функции gets(). - Никак не обрабатываются возможные ошибки ввода, например, когда пользователь вводит менее 100 символов или вообще не вводит ничего.
- Если ввод данных происходит с помощью командной строки, то введенные данные не отображаются на экране.
- Код не содержит операций, которые бы использовали или модифицировали переменные str1 и str2.
- Если код предназначен для ввода данных с помощью клавиатуры, то он будет работать некорректно, так как ввод данных не отображается на экране.
- Если введенные данные превысят 100 символов, то программа не будет способна корректно обработать этот ввод.
- Код не содержит никаких других действий или операций, кроме ввода данных и вывода сообщений.
- Введенные данные не сохраняются и не используются в дальнейшей работе программы.
- Код не содержит никаких проверок на предмет корректности введенных данных, например, на предмет превышения максимально допустимого количества символов.
- Код не содержит никаких других функций или операций, кроме функций printf() и gets().
- Если введенные данные содержат специальные символы, такие как символы новой строки или символы перевода строки, то они могут повлиять на работу программы.
- Код не содержит никаких операций, которые бы очищали или освобождали память, выделенную под массивы str1 и str2.
- Если введенные данные содержат символы, которые не поддерживаются кодировкой ASCII, то они могут некорректно отображаться или вообще не отображаться.
- Код не содержит никаких операций, которые бы проверяли корректность ввода данных, например, на предмет ввода недопустимых символов.
- Код не содержит никаких операций, которые бы проверяли корректность ввода данных, например, на предмет ввода недопустимых символов.
- Код не содержит никаких операций, которые бы проверяли корректность ввода данных, например, на предмет ввода недопустимых символов.
- Код не содержит никаких операций, которые бы проверяли корректность ввода данных, например, на предмет ввода недопустимых символов.
- Если введенные данные содержат символы, которые не поддерживаются кодировкой ASCII, то они могут некорректно отображаться или вообще не отображаться.