Scanf字符串和设置指针

问题描述 投票:-1回答:1

我想要scanf字符串并设置指针给他。字符串输入每次都不同,所以我不能像char input[20]那样设置。到目前为止没有成功。

int main(void) {
    char input;
    char *input_string = input;
    scanf("%s", &input_string);

    int i = 0; 
    while (input_string[i] != '\0') {
        printf('%d', input_string[i]);
        i++;
    }
}
c pointers scanf
1个回答
0
投票

在POSIX系统上,您可以使用m修饰符自动为字符串分配内存

char *input_string;
scanf("%ms", &input_string);

请注意,为了避免泄漏内存,您最终需要调用free(input_string);来释放分配的内存。

© www.soinside.com 2019 - 2024. All rights reserved.