Исправить функцию, возвращающую указатель на строку - C (СИ)
Формулировка задачи:
Здравствуйте, не подскажите, как нужно подправить код?
Эта лишь часть от целого, сама программа функционирует, но вот мне сказали, что эта часть кода некорректна.
И если можно, то напишите, как можно подробнее.
Спасибо.
char* GetString() { char x[100]; // локальный массив scanf("%100s", &x); return x; }
Решение задачи: «Исправить функцию, возвращающую указатель на строку»
textual
Листинг программы
static char x[100];
Объяснение кода листинга программы
- Объявляется статическая переменная типа char массив x с размером 100 элементов.
- В памяти выделяется 100 байт для хранения значений типа char.
- При использовании данной переменной необходимо учитывать, что её размер составляет 100 байт, а не 100 символов.
- При использовании данной переменной необходимо учитывать, что она является непотокобезопасной.
- При использовании данной переменной необходимо учитывать, что её значение не будет изменяться в процессе выполнения программы.
- При использовании данной переменной необходимо учитывать, что она не имеет типа, который поддерживает концепцию нулевого значения.
- При использовании данной переменной необходимо учитывать, что она не поддерживает операции инкремента и декремента.
- При использовании данной переменной необходимо учитывать, что она не поддерживает операции сравнения на равенство и неравенство.
- При использовании данной переменной необходимо учитывать, что она не поддерживает операции присваивания.
- При использовании данной переменной необходимо учитывать, что она не поддерживает операции арифметических вычислений.
- При использовании данной переменной необходимо учитывать, что она не поддерживает операции логического вывода.
- При использовании данной переменной необходимо учитывать, что она не поддерживает операции индексации и обращения к элементу массива.
- При использовании данной переменной необходимо учитывать, что она не поддерживает операции побитового логического вывода.
- При использовании данной переменной необходимо учитывать, что она не поддерживает операции битовых операций.
- При использовании данной переменной необходимо учитывать, что она не поддерживает операции динамического создания объектов.
- При использовании данной переменной необходимо учитывать, что она не поддерживает операции связывания.
- При использовании данной переменной необходимо учитывать, что она не поддерживает операции доступа к элементам массива по индексу.
- При использовании данной переменной необходимо учитывать, что она не поддерживает операции цикла while.
- При использовании данной переменной необходимо учитывать, что она не поддерживает операции цикла do-while.
- При использовании данной переменной необходимо учитывать, что она не поддерживает операции цикла for.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д