Как я могу получить строку от пользователя и выделить ее в массив указателей без каких-либо дополнительных переменных? - PullRequest
1 голос
/ 29 апреля 2020

Я хочу получить строку от пользователя и одновременно разместить ее в массиве char**, и я не хочу использовать какие-либо дополнительные переменные. Это возможно?

1 Ответ

2 голосов
/ 29 апреля 2020

Предполагая, что переменная-посредник означает дополнительную переменную, следующий код не использует никаких дополнительных переменных. Ответ ниже не будет работать, если максимальный размер строки неизвестен.

#include<stdio.h>
#include<stdlib.h>


int main()
{
    char** stringArray = malloc(sizeof(char*)*100); //100 is length of string array

    stringArray[0] = malloc(sizeof(char)*2000); //2000 is max string length

    scanf("%s",stringArray[0]);
    printf("String Received: %s\n",stringArray[0]);
    return 0;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...