質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

Q&A

解決済

2回答

273閲覧

配列に値を格納し,それを文字として表示する方法

Karensan

総合スコア10

C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

0グッド

0クリップ

投稿2017/07/02 13:30

###前提・実現したいこと
初心者です.VS2017のC言語で,配列に格納した整数値をprintfで表示させる時に,ASCIIコードを参照して文字で出力を得たいと思いプログラムを組んだのですが,下記のような表示が出て途中でデバックが停止してしまいます.なぜ,こうなってしまうのかをご教示ください.また,対策としてどのようにソースを書き換えればよいのかを教えてください.

###発生している問題・エラーメッセージ
'testprg_07_02.exe' (Win32): 'C:\Windows\SysWOW64\kernel32.dll' がアンロードされました
'testprg_07_02.exe' (Win32): 'C:\Windows\SysWOW64\kernel32.dll' が読み込まれました。PDB ファイルを開けないか、ファイルが見つかりません。
'testprg_07_02.exe' (Win32): 'C:\Windows\SysWOW64\KernelBase.dll' が読み込まれました。PDB ファイルを開けないか、ファイルが見つかりません。
'testprg_07_02.exe' (Win32): 'C:\Windows\SysWOW64\vcruntime140d.dll' が読み込まれました。PDB ファイルを開けないか、ファイルが見つかりません。
'testprg_07_02.exe' (Win32): 'C:\Windows\SysWOW64\ucrtbased.dll' が読み込まれました。PDB ファイルを開けないか、ファイルが見つかりません。
'testprg_07_02.exe' (Win32): 'C:\Windows\SysWOW64\ucrtbased.dll' が読み込まれました。PDB ファイルを開けないか、ファイルが見つかりません。
'testprg_07_02.exe' (Win32): 'C:\Windows\SysWOW64\ucrtbased.dll' がアンロードされました
プログラム '[16772] testprg_07_02.exe' はコード 0 (0x0) で終了しました。

###該当のソースコード

1 int main(void){
2 int x[5] = { 1,2,3,4,5 };
3
4 printf("%s%2s%2s%2s%2s",x[1],x[2],x[3],x[4],x[0]);
5 printf("\n");
6
7 system("pause");
8 return 0;
9 }

###補足情報(言語/FW/ツール等のバージョンなど)
エラー表示は,VS下部の”出力”のウインドウに出てきます.イメージ説明

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

intをcharに、printfの%sを%cに変更ですね。

Helloと表示しています。

c

1#include <stdio.h> 2 3int main(void) { 4 char x[5] = { 72, 101, 108, 108, 111 }; 5 6 printf("%c%c%c%c%c", x[0], x[1], x[2], x[3], x[4]); 7 printf("\n"); 8 9 system("pause"); 10 return 0; 11}

あと**PDB ファイルを開けないか、ファイルが見つかりません。**はエラーが出ているわけじゃないです。
**プログラム '[16772] testprg_07_02.exe' はコード 0 (0x0) で終了しました。**とあるの、戻り値に0を返して正常終了してます。

pbdファイルはデバッガがクラスやメソッドなどのソースファイルで作成した識別子を実行ファイルに照らし合わせて使用するためのデータベースファイルのようなもので、ビルド時に実行ファイルと一緒に作成されます。
testprg_07_02.exeと同じフォルダにtestprg_07_02.pbdがあるはずです。
testprg_07_02.exeからWindowsのDLLを参照していますが、WindowsのDLLには対応するpbdファイルが無いので見つかりませんとログを残しているのですね。

シンボル (.pdb) ファイル、ソース ファイル、およびバイナリ ファイルの検索

投稿2017/07/02 13:58

編集2017/07/02 14:15
退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Karensan

2017/07/02 16:50

詳しく解説して頂き、ありがとうございます!エラーでは、無かったのですね。実行時に作成される諸々のファイルについてもう一度勉強してこようと思います。
guest

0

おそらく、エラーではないと思いますよ。
自分も出ます。ログみたいなものじゃないですかね?

投稿2017/07/02 13:59

ryo00

総合スコア17

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Karensan

2017/07/02 16:52

回答いただきありがとうございます!指摘頂いてから少し見てみたら、ryo00さんの仰る通りエラーではなかったようですね。もう一度勉強し直してこようと思います。
ryo00

2017/07/03 03:04

勉強しなくても、今回の質問で勉強になったと思いますよw 今後これは、これでいいんだって思えばいいと思います。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問