おはよう!私は初心者のプログラマーであり、Cのコンセプトを適用する方法とまだ混乱しています。文字列に格納された文字 - ランダム化されたときに別の文字列変数に格納する方法
私はプロジェクトを進めています。私の問題は、特定の文字を初期化して文字列に格納していることです(vars [28])。私の目標は、ランダムな方法で文字列の文字を生成し、生成された文字列を別の変数に格納することです。
int randnum = 0, num = 0;
char vars[28] = "|abcdefghijklmonpqrstuvwxyz."; //initialized string
char term; //where to store randomized string
int i = 0;
char choi[1];
printf ("%c", vars[0]);
srand (time(NULL));
randnum = rand() % 30; //only 30 characters maximum to be stored
for (i = 0; i <= randnum; i++)
{
//randomly produce vars[28] characters here and store into 'term'
}
その他の質問:と。無作為化されたとき、お互いの隣にいるのですか?
ありがとうございました!
あなたがしたいことを想像してください。無作為に選択された文字列から文字列を生成します。生成された文字列の長さに一致するループで 'vars [rand()%28]'を使って文字列を作成する必要があります。 – mewa
こんにちは!うーん、私は "term [100] = vars [rand()%28];"ループ内で、 "printf("%s "、term)"しかし、端末に出力されません...私のミスは何ですか? –
'term'は配列や文字列へのポインタではなく、1バイトで、' term [100] 'はランダムなメモリ位置にアクセスしており、セグメンテーションフォルトが発生します。 –