Ввод данных из командной строки - 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);
}

Объяснение кода листинга программы

  1. Объявлены две переменные типа char массива: str1 и str2, каждая из которых может хранить до 100 символов.
  2. Выводится сообщение Str1: и считывается содержимое в переменную str1 с помощью функции gets().
  3. Выводится сообщение Str2: и считывается содержимое в переменную str2 с помощью функции gets().
  4. Никак не обрабатываются возможные ошибки ввода, например, когда пользователь вводит менее 100 символов или вообще не вводит ничего.
  5. Если ввод данных происходит с помощью командной строки, то введенные данные не отображаются на экране.
  6. Код не содержит операций, которые бы использовали или модифицировали переменные str1 и str2.
  7. Если код предназначен для ввода данных с помощью клавиатуры, то он будет работать некорректно, так как ввод данных не отображается на экране.
  8. Если введенные данные превысят 100 символов, то программа не будет способна корректно обработать этот ввод.
  9. Код не содержит никаких других действий или операций, кроме ввода данных и вывода сообщений.
  10. Введенные данные не сохраняются и не используются в дальнейшей работе программы.
  11. Код не содержит никаких проверок на предмет корректности введенных данных, например, на предмет превышения максимально допустимого количества символов.
  12. Код не содержит никаких других функций или операций, кроме функций printf() и gets().
  13. Если введенные данные содержат специальные символы, такие как символы новой строки или символы перевода строки, то они могут повлиять на работу программы.
  14. Код не содержит никаких операций, которые бы очищали или освобождали память, выделенную под массивы str1 и str2.
  15. Если введенные данные содержат символы, которые не поддерживаются кодировкой ASCII, то они могут некорректно отображаться или вообще не отображаться.
  16. Код не содержит никаких операций, которые бы проверяли корректность ввода данных, например, на предмет ввода недопустимых символов.
  17. Код не содержит никаких операций, которые бы проверяли корректность ввода данных, например, на предмет ввода недопустимых символов.
  18. Код не содержит никаких операций, которые бы проверяли корректность ввода данных, например, на предмет ввода недопустимых символов.
  19. Код не содержит никаких операций, которые бы проверяли корректность ввода данных, например, на предмет ввода недопустимых символов.
  20. Если введенные данные содержат символы, которые не поддерживаются кодировкой ASCII, то они могут некорректно отображаться или вообще не отображаться.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 3.5 из 5
Похожие ответы