数字をある基数から別の基数に変換するプログラムを書く必要があります。 私はユーザーの入力を以下の形式で取得する必要があります。<original base><new base><number in original base>
cでのfgetsの使用
私はscanfを使用することはできません。また、行の大きさを想定することもできません。 私は既にfgets()
を使ってみましたが、サイズを制限することなく使用する方法はわかりません。私は何をすべきかのアイデアを得たいと思っています。ありがとう。
#include <stdio.h>
#include <math.h>
#include <stdlib.h>
int BaseChanger()
{
char input[12];
printf("enter the original base, new base ,number");
fgets(input, 12, stdin);
}
@ Efrat.shp固定サイズの配列を動的に割り当てます。 fgetsの呼び出しの後にarryが新しい行の文字を含んでいない場合は、より大きなサイズの配列をreallocし、前の文字列が終わる配列内の位置を使ってfgetsを再度呼び出します。 –
@xing 'getline'は標準のC関数ではありませんが、あなたはそれがこの割り当てで利用可能であり、許可されていると思いますか? –
何とか行を読むことができたとします。あなたはそれで何をしますか?ファイルから文字を一つずつ読み取って同じことをすることはできますか? –