• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:C++でscanfは使えない?)

C++でscanfは使えない?

TreatMeGentlyの回答

回答No.6

Visual STUDIO 2005くらいから scanf_sになっていると思います。 オーバーロードされた関数が沢山有りますのでscanf_sでググってみて下さい。 頑張ってね。

satisfied999
質問者

お礼

ありがとうございます。よくわからないながらにいろいろ触ってたらなんとかエラーがでなくなりました。

関連するQ&A

  • C言語でscanf()が先に実行されるのはなぜですか?

    C言語でscanf()が先に実行されるのはなぜですか? #include <stdio.h> int main(void){ int intNum; printf("整数を入力してください:\n"); scanf("%d", &intNum); printf("入力値は:%d\n",intNum); return(0); }

  • scanf関数について

    質問があります。 最近C言語を勉強し始めたのですが、scanf関数を使うと以下のような警告が出ます。 「arning C4996: 'scanf': This function or variable may be unsafe. Consider using scanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. c:\program files\microsoft visual studio 9.0\vc\include\stdio.h(306) : 'scanf' の宣言を確認してください。」 使用しているのは Visual C++ 2008 Express Editionです。

  • doループ内での scanf

    Visual C++ win32 console application でC言語の勉強をしています 制御文に入ったところで、scanf文が無視され、プログラムが進んでいく という事態に直面して困っています。 どなたか下記のプログラムの間違いを指摘してください あるいは  言語仕様についてご教示ください 以下、まるまるコピーします #include<stdio.h> int main(void) { int g; char ch; do{ printf("何ガロンですか?: "); scanf("%d", &g); printf("%.2fリットルです\n", (3.7854)*g); printf("また計算しますか?Y/N : "); scanf("%c", &ch); printf("%c\n", ch); }while(ch == 'Y'); return 0; } よろしくお願いします。長文失礼しました

  • c言語のポインタへの文字列入力についてです。

    当方c言語初学者なのですがscanfを使ってポインタに文字列を入力したいのですがバグが発生して進みません・・・どういうことなのでしょうか? #include <stdio.h> int main(void) { char *a; scanf("%s", a); printf("%s", a); return (0); } *aをa[128]; のように配列に変えるとうまくいくことはなんとかわかるのですが・・・助けてください(^_^;)

  • H8マイコンCでprintf/scanfが使いたい

    C言語ですがちょっと特殊な範囲です。 H8マイコンについてどうしてもわからないことがあったので質 問させていただきます。 H8-3687+HEW4を使っております。 やりたいことはRAMではなくROMに書き込んだ状態で printf/scanfを使用したいのです。 (Htermに文字列を表示するなど・・・。) 付属のstdio.hをインクルードしてもwrite/readが足りないとコンパ イラにおこられます。 とりあえず、モニタのlower.cを改造して使えばコンパイルは 通るのですが、動作はしません。(-1が返ってきます。) write単体では動くのですが・・・。 とにかく、ROMに書き込んでprintf/scanfをを使ってPCと通信したいの で、よい方法があればよろしくお願いします。 stdioに限らず、等価な結果が得られればかまいません。 もちろん、モニタ上でprintfは問題なく動きます。

  • scanfの謎

    C言語の以下のプログラムがありまして、 #include <stdio.h> main() { int i; scanf("%d ", &i);printf("d=%d\n", i); } これを実行すると、 1 2 d=1 のように、入力を2回受け付けてしまいます。 一体なんでこのようなことが起こるのでしょうか?教えてください。

  • scanf文がうまくいかないのですが・・・

    下のようなプログラムを実行するとうまくいかないのですが、何故なのでしょう。 どうかお教えください。 #include<stdio.h> int main(void) { int i; char n; for(i = 0; i < 10; i++) { printf("nを入力してください>>>"); scanf("%c",&n); printf("%c\n",n); } return 0; }

  • C言語のポインタについての質問です。

    C言語のポインタについての質問です。 2つのプログラムを作り、片方で数値を入力し、 もう片方でその数値を読み取りたいと思っています。 数値入力のプログラムは次のようになっています。 #include<stdio.h> void main(void){ int A=1; int *p; p=&A; printf("%p\n",p); } この実行結果は「0012FF88」となりました。 次にこの「0012FF88」というアドレスを使って「1」を読み取る 別のプログラムを作りたいと思っています。 #include<stdio.h> void main(void) { int add; int a; printf("アドレスは?\n"); scanf("%x",&add);    //「0012FF88」と入力 a=*(int*)add; printf("%x---->%d",&add,a); } このようなプログラムを作ってコンパイルできたのですが、 実行してアドレスを打ち込むと「Win32の例外が発生しました」 となって実行できません。 何かよい方法やプログラムの問題などありましたら 教えて頂けませんか?

  • C、C++

    SE未経験で勉強中です。 C、Visual studioC++、Windows 10 問題: sキーを入力してから10秒後に、 "10秒経ちました"と表示する。 for、Sleep、scanfを使用。 どのようにかいたらよいのか なんどやってもエラーは出ないものの 10秒経ったら文字が表示されることしかできず、 sキーを押してから10秒後、という処理ができません。 教えていただけたら幸いです。 #include 〈stdio.h〉 #include 〈windows.h〉 int main(void) { printf(“sキーを入力してください。”); Sleep(10000); printf(“10秒経ちました!” ); } ↑ここにどうやったらsキーを押してからこの処理を実行させるのですか?

  • Visual C++ 2008 Express Edition

    Visual C++ 2008 Express Editionをダウンロードしたのですが、使い方が全く分かりません。C言語を学習しています。 例えば #include <stdio.h> int main(void) { printf("Hello, World!\n"); return 0; } というようなプログラミングを実行するにはどうすればいいでしょうか