Ich habe ein Problem beim Generieren einer zufälligen Zeichenfolge in einer Funktion.Drucken Sie eine zufällige Zeichenfolge
Im folgenden Code I ASCII-Zeichen von 65 bis 90. Ich möchte 48 enthalten bis 57 verwendet haben, 58 bis 64
Überspringen Gibt es eine Möglichkeit, dies zu tun?
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <time.h>
int main()
{
char s[30];
random_string(s, 6,65,90);
printf("\n%s\n", s);
return 0;
}
void random_string(char * string, unsigned length,int min,int max)
{
/* Seed number for rand() */
srand((unsigned int) time(0) + getpid());
/* ASCII characters 33 to 126 */
unsigned int num_chars = length - 1;
unsigned int i;
for (i = 0; i < num_chars; ++i)
{
string[i] = rand() % (max - min + 1) + min;
}
string[num_chars] = '\0';
}
ja, es ist auch eine gute Antwort. Aber ich habe es mir selbst behoben – Kumar
gib uns ein upvote zumindest: p – michi7x7
Sorry dafür, – Kumar