gpt4 book ai didi

c - 执行时出错 : Segmentation fault

转载 作者:太空宇宙 更新时间:2023-11-04 05:28:48 25 4
gpt4 key购买 nike

我是 C 语言的初学者。阅读 Ritchie 书的前几章后,我编写了一个程序来生成随机数和字母表。

该程序使用 gcc 编译良好。然而在运行它时,它给出了一个错误“Segmentation fault”,这是我有限的知识所无法理解的。我很乐意了解我写错了什么。

#include <stdio.h>
#include <stdlib.h>
#include "conio.h"
#include <time.h>


long int genrandom(int,int);
void randAlph(void);
char letterize(int);

int main (void) {
// char full[9];
// char part_non[4];
srand(time(0));

int i;
for (i=0;i<50;++i) {
randAlph();
};

}

long int genrandom(int mino,int maxo) {
int val=mino+rand()/(RAND_MAX/(maxo-mino)+1);
return val;
}

void randAlph (){
int val;
char text;
val=genrandom(0,26);
// return val;
text=letterize(val);
printf("%s ,",text);

}

char letterize(int num) {
char letter='A'+num;
return letter;
}

最佳答案

printf("%s ,",text); 是错误的 - 它表示 text 是一个以 nul 结尾的字符数组。使用

printf("%c ,", text);

而不是打印你的单个字符。

关于c - 执行时出错 : Segmentation fault,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13704127/

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