
sscanfとscanfの違いがよくわからないのですが、簡単に優しく教えて下さい。
お願い致します。
また、scanfは入力された文字列を読み込みますが、sscanfは文字列を他の変数、例えばaその文字列の先端のアドレスを渡したり、文字の1を数値としてのに変換すると習ったのですがあっていますか?
補足ですいません。
sscanfに関する説明不足と関数atoiについて。
sscanfは1文字を数値、すなわち、文字1を数値1に変換してそのaのアドレスを得て、aに渡すのですよね。
ここまでは理解しました。
ですが、
sscanfは1文字を数値、すなわち、文字1を数値1に変換
に関しては関数atoiと違いがわかりません。
プログラムの書き方によりどっちも使えて、
例えば、文字1(文字コード)を(1の文字コードの)数値49とかではなく、まんま数値の1に出来るのでしょうか?
No.2ベストアンサー
- 回答日時:
>sscanfとscanfの違いがよくわからないのですが
入力元の違いで、できることは一緒です。
scanf:標準入力(キーボードから入力)
sscanf:入力済みの文字列(文字配列)
>関数atoiと違いがわかりません
>プログラムの書き方によりどっちも使えて
まあ、その通りですね。
以下のソースではいずれも変数iには10進数の数値123が入ります。
char str[] = "123";
int i;
i = atoi(str);
printf("data=%d\n", i);
sscanf(str, "%d", &i);
printf("data=%d\n", i);
sscanfは複数のデータを抽出するのに向いています。atoiは1要素のみ。
以下の例では変数numに数値81が、文字配列nameには"Tokyo"が入ります。
char str[] = "81,Tokyo";
char name[10];
int num;
sscanf(str, "%d,%s", &num, name);
printf("number=%d, country=%s\n", num, name);
No.1
- 回答日時:
scanf と sscanf の違いは書いてあるので、読んでください。
まあ、それ以前に文字と数値の区別がついていないみたいですが。
補足の説明が説明になっていないようなので、今は考えるのやめて、
来週くらいまで頭冷やしてから考えた直した方が良くないですか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) VBAで、特定の文字より後を削除して残った数値を文字列に変換と特定の文字より前も削除したい 3 2022/04/15 19:21
- Excel(エクセル) エクセルでセルに何らかの文字が入力されたらそれを任意の数値として認識させる方法がしりたいです。 3 2023/03/16 20:19
- その他(コンピューター・テクノロジー) 【Tableau Desktop】文字列から8桁の数字を日付型(yyyyMMdd)として取得 1 2023/07/31 10:17
- Excel(エクセル) Excelの文字列を数字に変換する方法について 6 2023/07/31 21:18
- その他(プログラミング・Web制作) python質問 1 2023/08/14 11:54
- Java Java 南京錠 2 2023/02/04 11:46
- Excel(エクセル) Excelの関数についておしえてください。 3 2023/04/20 18:36
- Java java 入力された文字列を数値に置き換えて整数にし、計算をしたいです。 <を10として /を1とし 4 2022/05/16 21:08
- C言語・C++・C# [C言語] コメント文字列を無視して、数値データを読み込むプログラム部分について 5 2022/10/05 11:03
- Visual Basic(VBA) 列を指定して値を左から5文字にそろえる 1 2022/06/10 20:28
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
CStringのFindで文字列検索を行...
-
charと%c , %s の関係について
-
sscanfとscanfの違いがよくわか...
-
fgetsで拾われる改行文字を削除...
-
文字列中に含まれる文字の個数...
-
反転した数値を表示させるやり方
-
C言語の問題 キーボードから1 ...
-
itoaわかりません
-
ブランクのチェック
-
C言語でパスワード作成ツール
-
C言語 空白の行(改行のみ)が...
-
自作の関数を見てください。
-
C言語のisdigit関数を使った問...
-
どうやっても上手くいきません…
-
C言語 strlen 再入力を促す
-
C++
-
初歩的なプログラムなんですが...
-
sscanfでフォーマットに合って...
-
C言語のステップ数をカウントす...
-
c言語について array[i]-‘0’ こ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
CStringのFindで文字列検索を行...
-
fgetsで拾われる改行文字を削除...
-
itoaわかりません
-
sscanfとscanfの違いがよくわか...
-
Cで「大文字、小文字の判定」は...
-
C言語のステップ数をカウントす...
-
fgets関数を使用したときの文字...
-
CStringについて
-
ブランクのチェック
-
単語数のカウントについて
-
C言語 空白の行(改行のみ)が...
-
C言語で可変長から固定長に変換...
-
文字列中に含まれる文字の個数...
-
反転した数値を表示させるやり方
-
fgetsとsscanfを使って一行から...
-
C++
-
メニューバーでクリックした個...
-
fgetsの用法について
-
文字列の途中に「0」がある場...
-
かぶった文字を消すプログラム
おすすめ情報