可能重复:
使用 scanf 的分段错误
我正在尝试运行一个 C 程序,其中我接受用户的密码然后输出它。但是,当我运行该程序时,我收到一条名为“Segmentation Fault (core dumped)”的消息。我知道这个错误发生在数组似乎超过堆栈大小但我无法弄清楚我错在哪里的地方。任何帮助表示赞赏。代码如下:
int main(int argc, char *argv[])
{
int i = 0;
char *password, *key;
int keylength = 256;
printf("\nPlease enter a password: ");
scanf(" %[^\n]", &password);
printf("Entered password is: %s", password);
return 0;
}