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

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

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

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

配列

配列は、各データの要素(値または変数)が連続的に並べられたデータ構造です。各配列は添え字(INDEX)で識別されています。

Q&A

1回答

870閲覧

c言語 配列への入力について

akira-

総合スコア2

C

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

配列

配列は、各データの要素(値または変数)が連続的に並べられたデータ構造です。各配列は添え字(INDEX)で識別されています。

0グッド

0クリップ

投稿2020/11/24 11:57

初学者です。配列への入力をしたいです。(標準入力ではないです。)

ex) 123でいうと
a[]という配列に a[0]=1 a[1]=2 a[2]=3

という形で入力したいのですが、そのような関数はあるのでしょうか? 標準入力で言えばfgetsでできたのですが、、fgetsで出来たりしますか? 調べてみてもよくわかりませんでした。教えていただけると幸いです。

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

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

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

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

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

y_waiwai

2020/11/24 12:21

質問の意味がわかりません。 という形とはどういう形?
kazuma-s

2020/11/24 16:18

1 2 3 のようにスペースを置かずに 123 と入力して、1桁ずつばらしたいのですか? 32768 でいうと、どういう形で入力したいのですか? 配列 a の要素数はいくつですか? 配列 a の要素の型は何ですか。int それとも char?
thkana

2020/11/25 22:26

> 標準入力ではない では、入力(情報のソース)は何ですか?
guest

回答1

0

修正依頼に何人もの方が書かれているように、あなたの質問には情報がとてもとても不足しています。

標準入力で言えばfgetsでできたのですが

という部分から、「文字型の配列aに、fgetsで文字列を標準入力から設定するときと同じように、'1','2','3'という文字を格納したい」という質問だと仮定して答えます。おそらくヌル文字は意識にないのでしょう。

ソースコードの冒頭に#include <string.h>を追加し、関数内部で配列aを宣言した後で、strcpy(a, "123");と書けば、a[0]に'1'(1という文字)、a[1]に'2'(2という文字)、a[3]に'3'(という文字)、a[4]に0(ヌル文字)が入ります。

「'1'(1という文字)は、数値1とは違うものである」とか、「文字列の終端にはヌル文字が付く」とか、そこらへんはご自分で調べてください。

「そうではなく、数値としての1,2,3を配列の要素a[0], a[1], a[2]に格納したいのだ」ということであれば、fgetsではできていないので、元々の理解が間違っています。

投稿2020/11/24 23:42

Daregada

総合スコア11990

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問