gpt4 book ai didi

c - string,print, {段错误(核心转储)}

转载 作者:行者123 更新时间:2023-11-30 20:36:59 25 4
gpt4 key购买 nike

我想知道如何引用字符串单词的特定字母例如 word[1] 以及如何打印字符串。显然这是错误的:

#include<stdio.h>
int main(){
char *word;
printf("give us the word you want to play with\n");
scanf("%s", word);
printf("%s\n", word[1]);
return 0;
}

最佳答案

Word 是一个指向未知位置的指针,这将导致它被随机值填充并导致段错误。要修复此更改,将 char *word 更改为 char *word = malloc(1024) 您可以将 1024 更改为您认为合适的任何整数。您的下一个问题是您尝试使用 %s 打印字符,只需将其更改为 %c 就可以了。此外,如果您想释放该内存,您可能需要在末尾添加 free 。下面是一些示例代码:

#include <stdlib.h>
#include <stdio.h>
int main(){
char *word = malloc(256);
printf("Enter a word:")
scanf("%s",word);
printf("%c",word[0]);
free(word);
return 0;
}

关于c - string,print, {段错误(核心转储)},我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34030187/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com