「トーク:C言語」の版間の差分

削除された内容 追加された内容
「実行環境は?」「目次案」「ページ分け案」「標準関数について」を追記・修正
6 行
 
*開発環境については代表的なものを紹介するだけにとどめるべきだと思います。各開発環境のインストール方法や使用方法は本来その開発環境の開発元が説明するべき内容であり、それを第三者が行うことは情報の信頼性が低くなり、またたとえ信頼性が低い情報であっても説明されたサイトが存在すると、利用者から開発元に説明を求める要求がおきにくくなるという問題も考えられます。--[[利用者:Toya shiwasu|Toya shiwasu]] 2009年5月23日 (土) 09:39 (UTC)
 
*開発環境については[[C言語/はじめに#開発環境を整える]]で記述しています。[[利用者:Toya shiwasu|Toya shiwasu]] ([[利用者・トーク:Toya shiwasu|トーク]]) 2013年12月13日 (金) 12:32 (UTC)
 
== 準拠する規格 ==
23 ⟶ 25行目:
*「基礎知識」の項目を追加--[[利用者:Toya shiwasu|Toya shiwasu]] 2009年5月28日 (木) 14:49 (UTC)
*「制御文」の項目を追加--[[利用者:Toya shiwasu|Toya shiwasu]] 2009年6月9日 (火) 09:44 (UTC)
*現在の目次に従って、目次全体を修正。各ページの説明も修正。[[利用者:Toya shiwasu|Toya shiwasu]] ([[利用者・トーク:Toya shiwasu|トーク]]) 2013年12月13日 (金) 12:32 (UTC)
 
目次案
<pre>
:[[C言語]]...C言語とは(歴史・規格・主な特徴について説明する。)
■はじめに
:[[C言語/はじめに]]...開発手順、開発環境を整える、Hello, World!を実行する
C言語とは
:[[C言語/基礎知識]]...C言語の基本事項を広く浅く学ぶ。詳細は以降のページへリンクする。
 ...歴史・規格・主な特徴について説明する。
:概略...C言語の各要素の相互関係を分かりやすく説明する。ハードウェアの図(CPU,メモリ,HDD,モニタ、キーボード・マウスなど)と関連付けて説明する方法を考え中です。いい考えがあったら教えてください。(C言語の中のページではなく、プログラミング言語概論などを作りその中のページに記述するべきだろうか。)
:[[C言語/記法]]...文字集合、字句、文、ブロックを扱う。
:[[C言語/データ型と変数]]...データ型と変数の基本に加え、全ての記憶域クラス指定子、型指定子、型修飾子を扱う又はリンクする。
:[[C言語/演算子と式]]...演算子と式の基本に加え、全ての演算子を扱う又はリンクする。
:[[C言語/制御文]]...論理型、全ての制御文を扱う。
:[[C言語/配列]]...1次元又は多次元の配列を扱う。
:[[C言語/ポインタ]]...ポインタを扱う。
:[[C言語/配列とポインタ]]...配列とポインタの関係を扱う。
:[[C言語/文字と文字列]]...マルチバイト文字セット、Unicode文字セットを扱う。
:[[C言語/構造体・共用体]]...構造体、ビットフィールド、共用体を扱う。
:[[C言語/関数]]...関数を扱う。
:[[C言語/前処理指令]]...全ての前処理指令を扱う。
 
:[[C言語/標準ライブラリ]]...全ての標準ライブラリを扱う。
開発環境を整える
 ...エディタとコンパイラ、統合開発環境の紹介。代表的なものにとどめる。
  個々のインストール方法や使用方法を説明したい場合は、別ページで行う。
 
:[[C言語/おわりに]]...C言語を一通り勉強した読者に対して、次にどんなことを勉強したらよいか、など。
開発手順
 ...ソースファイル、オブジェクトファイル、実行可能ファイル、
  エディタ、コンパイラ、リンカについて説明する。
 
Hello, World!を実行する
 ...意味のある最小のプログラムとしてHello, World!プログラムを実行する。
  プリプロセッサ、標準ライブラリ、関数などについて'''簡単に'''説明する。
  コピペではなく手入力を促す。
 
----
■基礎知識
C言語の基本事項を広く浅く学ぶ。
「基礎知識」のページを設ける理由は、
入力→記憶→演算→出力を行う簡単なプログラムを学んでから
C言語の個々の構成要素を学んだほうが
理解しやすいだろうと思ったから。
具体的にはscanf関数で数字を受け取り、
それを変数に格納し、簡単な演算を行って、
printf関数で結果を出力するような、
簡易計算機を作れるようになる程度の知識を目安とする。
 
----
■制御文
論理型
論理演算子
比較演算子
増分及び減分演算子
選択文
if文
switch文
繰り返し文
while文
do文
for文
分岐文
goto文
continue文
break文
return文
 
----
■概略
 ...C言語の各要素の相互関係を分かりやすく説明する。
 ハードウェアの図(CPU,メモリ,HDD,モニタなど)と関連付けて説明する方法を考え中です。
 いい考えがあったら教えてください。
 
----以下は書きかけの目次案です
書式
 ...文・単語・字下げ・コメント
データを扱う
 データ型
 定数
 変数
  型キャスト
 ----
 配列
 文字と文字列
 ポインタ
 構造体
 共用体
 ----
 記憶クラス
 データ型の修飾
アルゴリズムを記述する
 演算子
  代入演算子
  算術演算子
  インクリメント/デクリメント演算子
  高度な演算子
  優先順位と結合規則
 制御構造
  if
  else if
  switch
  for
  while
  do~while
  break
  continue
 関数
標準ライブラリ
 コンソール入出力...データをユーザーから受け取る、ユーザーに提示する
 文字列処理
 文字処理
 算術
 ファイル入出力...データを保存・読み込みする
 
----
■おわりに
 ...C言語を一通り勉強した読者に対して、次にどんなことを勉強したらよいか、など。
 アセンブリ、マシン語などについて軽く触れるか、wikibooks内に教科書を作ったらリンクする。
</pre>
 
== ページ分け案 ==
140 ⟶ 62行目:
・上の目次案にしたがってページを作成してみます。[[利用者:Toya shiwasu|Toya shiwasu]] 2009年5月14日 (木) 18:07 (UTC)
・ページ「C言語」の本文に既にいくらか記述がありますが、冗長な表現が多く、また正確ではない記述も多く、修正しながら完成させることが非常に困難なため、新しいページをフルスクラッチで作成しています。作成したページに情報が全て含まれた項目から順次、ページ「C言語」から削除していく予定です。
*上の目次案は現在の目次と同じです。[[利用者:Toya shiwasu|Toya shiwasu]] ([[利用者・トーク:Toya shiwasu|トーク]]) 2013年12月13日 (金) 12:32 (UTC)
:[[C言語/はじめに]]
:[[C言語/基礎知識]]
 
:[[C言語/記法]]
:[[C言語/制御文]]
:[[C言語/配列]]
:[[C言語/文字と文字列]]
:[[C言語/ポインタ]]
:[[C言語/関数]]
:[[C言語/構造体・共用体]]
 
:[[C言語/前処理字句]]
:[[C言語/標準ライブラリ]]
 
上のページ分け案で[[C言語/基礎知識]]のページの内容が多くなりすぎているようなので分割しようか検討中です。[[利用者:Toya shiwasu|Toya shiwasu]]([[利用者・トーク:Toya shiwasu|トーク]]) 2012年8月27日 (月) 13:24 (UTC)
*現在、[[C言語/基礎知識]]は必要最低限の記述にとどめて、詳細についてはリンクにしてあります。[[利用者:Toya shiwasu|Toya shiwasu]] ([[利用者・トーク:Toya shiwasu|トーク]]) 2013年12月13日 (金) 12:32 (UTC)
 
==標準関数について==
161 ⟶ 72行目:
 
私も「おまじない」として説明を後回しにする方法は避けたいと考えています。しかし、入力と出力のためにscanf関数とprintf関数の使用は必須であると思われます。はじめに「C言語/基礎知識」というページをつくり、scanf関数、printf関数、変数、四則演算子、代入演算子などについて、(短く・分かりやすくのトレードオフが難しいとは思うが)最低限の説明をした方が、その後の説明がスムーズになると思います。--[[利用者:Toya shiwasu|Toya shiwasu]] 2009年5月24日 (日) 07:54 (UTC)
 
*ライブラリについては[[C言語/はじめに#開発手順]]で少し説明してあります。printf関数、scanf関数については[[C言語/基礎知識]]で簡単に説明してあります。[[利用者:Toya shiwasu|Toya shiwasu]] ([[利用者・トーク:Toya shiwasu|トーク]])
 
==While文の動作について==
ページ「C言語」に戻る。