std :: stringは使用できません。したがって、問題はなぜですか、問題を設定した人はどのように文字列データを渡す必要がありますか? std :: stringsを許可しないのはまったく合理的ですが、独自のクラスを持っていますか、呼び出し側が提供する固定バッファでC文字列を使用するのですか、malloc()で割り当てられたC文字列を渡しますか?他にも可能な選択肢があります。
独自の文字列クラスがある場合は、表示せずに答えられません。呼び出し元によって提供されるCバッファを埋めるために
/* return 0 on success, -1 if buffer too small */
int toString(char *buff, int N, int real, int imaginary)
{
int sz = snprintf(buff, N, "%d + %di", real, iamginary);
if(sz > N-1)
return -1;
return 0;
}
mallocで割り当てられた文字列を渡すこと。
/* return a string allocated with malloc */
char *toString(int real, int imaginary)
{
int sz;
char *answer = 0;
const char *fmt = "%d + %di";
sz = snprintf(0, 0, fmt, real, imaginary);
answer = malloc(sz + 1);
if(answer)
snprintf("answer, sz+1, fmt, real, imaginary);
return answer;
}
独自のクラスを作成して使用できますか? –
はい私はそれを行うことができます。 –
次に、値をメンバーデータとして格納し、その値から配列を作成するクラスを作成できます。または単に整数を読み込んで、配列を作成します。 –