週3:理解と基本的なキーワードを使用して

まず、キー32
は、データは、1型
ボイドフリータイプ、関数の戻り値、パラメータ、ポインタ
指示整数符号付きunsigned型を
long型整数short int型をchar型
フロートダブルフロート
構造体ユニオン列挙構造体、共用体、列挙型
オート自動的に、破壊された作成
のconst定数
静的変数静的の
レジスタは、レジスタの
揮発性揮発性、不安定
にextern変数や関数宣言
のtypedefをまたは再定義
バイトのsizeofの数
フロー制御
、他のデフォルトのスイッチケースBREAK IF
しばらくの間は続行行う
GOTOリターン

2を、演算子、
算術演算子:+ - * /%
リレーショナル演算子:> <> = <= = ==!
論理演算子:&& ||!
独立変数演算子:+ / -
代入演算子:= + = - = = * / = ...
?三項演算子:B:C;
ビット演算子:&| ^〜<< >>

3、任意のシステムで最初のプログラムは、することができ、通常の動作(先週は、質問への答えを考えます)

`` `C
のHello World
の#include <stdio.hに>
int型のmain(int型のargc、char型のconst * ARGV [])
{
のprintf( "Hello Worldの\ nは!");
0を返します。
}
`` `

第二に、最初のCプログラムの
プログラマはCコードではなく、標準を書き、それがに翻訳することができ、標準用にコンパイルすることを継続する必要があります。
事前に変換された命令(#で始まる)と呼ばれるプリプロセッサディレクティブと呼ばれる翻訳プログラムを担当し、翻訳プロセスは、前処理と呼ばれています。
画面に前処理のGCC -E hello.cの出力結果。
gccを-Eのhello.c -o hello.i前処理結果をファイルに保存しました。

#include現在のファイルにファイルが
<>指定されたディレクトリおよびファイルヘッダの負荷に応じてシステムを検索しない
システムがもはやを検索し、ファイルヘッダをロードするディレクトリを指定した場合、現在のディレクトリヘッダーファイルから「」優先負荷。

C言語にC言語の標準化委員会が機能形でいくつかの基本的な機能を提供し、これらの機能は、標準ライブラリ、libc.so.にパッケージされています
標準入出力


`` `C
の#include <stdio.hに>
` ``

C言語ファイルのタイプ分類:
.Cソースファイル、メインの機能コードのレコード。
彼らは、ソースファイルの形式を持っているもの、変数、関数、および説明するための.hファイル2次ソース・ファイル。
.Cによる前処理.iファイル、後
.Sに.Iによってコンパイルファイル
に.Sによって.oオブジェクトファイル
の.oの複数に.outの実行可能ファイル、マージ。

`` C '
int型のmain(int型のargc、char型のconst * ARGV [])
``

コードを管理するための最小単位の関数としてC言語は(セグメントが機能コードを有する)(ライブラリ、モジュール、ファイル、機能)
主関数は、エントリ関数C言語であり、唯一1、あなたはプログラムが自動的に起動され、「オペレーティングシステム」となります実行するときがあります。
戻り値の型関数名(パラメータリスト)

`C
機能体
リターン取引;
`

 

ARGC、ARGVパラメータ主機能が実行されたときに、必要なオペレーティングシステムによって提供されます。
INTがメイン実行が終了し、呼び出し元(オペレーティングシステム)への戻り型intの結果が存在することになる表します。
復帰は、関数の実行を終了し、その後、データは呼び出し元の関数に返されます。
メイン関数の戻り値:
すべてが正常である0の手段
負のエラーが表示され
、正の値は、例外を表し

`` `C
のprintf( "Hello Worldの\ n-は!");
` ``
printf関数は、送信データのための標準的なライブラリです。
パラメータ:これは2つのパラメータの部分(+データ形式)を必要とするパラメータの数は固定されなくてもよいです。
戻り値:文字の成功したディスプレイの数
scanf関数は、入力のための標準ライブラリの関数です。
パラメータ:これは2つのパラメータの部分(+アドレス形式)を必要とするパラメータの数は固定されなくてもよいです。
戻り値:成功したデータの数入力し
、のprintf scanf関数は、デバッガで使用され、インターフェイスにアナログ表示データ用のprintf、scanf関数は、アナログ・インターフェースからデータを取得するために使用されます。
エスケープ文字である\ nが、シンボルが正常に表示することができません。
\ nを入力し
\最初のホームキーに似たR・リターン機能
\バックスペースに類似のbバックスペース機能
\が警告を生成するために、Aを鳴らし
\\出力を\
%%%出力を

二、どの実行可能プログラムへのCコード
1、編集者:例えばVIMコーディングとして使用してファイルエディタ
Vimのhello.cの
2を、前処理:標準のCコードに変換コンパイルされたコード・プログラマ。
GCC -Eのhello.c -o hello.iは、前処理ファイル.I端生成
アセンブリコードに変換標準のCコード:3、コンパイラ。
gccの-S hello.i .Sで終わるファイルアセンブラ生成
4、アセンブリ:オブジェクトファイルにアセンブリファイルを変換する
のgcc -c hello.sがで終わる.oオブジェクトファイルを生成
5を、リンク:標準へのファイルの数実行可能ファイル
のgccのAO BOの共同プロデュース実行可能プログラムは、デフォルトの名前はa.outです
-oによって、実行可能ファイルの名前を設定することができます。
6、負荷:./ a.outのハードディスクからカーネルをロード

三、GNUコンパイラ
GNUは、Linuxカーネルのソースコードを維持する責任のオープンソース組織である、GNUコンパイラコンパイラは、特に地域社会とコンパイラの開発のためのGNU Linuxシステムです。
プリプロセッサ、コンパイラ、リンカ、およびその上:コンパイラは、からなるプログラムの多くの異なる機能で構成されています。
GCCコンパイラ一般的に使用されるパラメータ:
-E -S -c -o
-Wallコードをチェックするために、より厳格な基準
-Werror警告をするときのエラー処理
-g追加デバッグ情報、gdbの
最適化レベルのコードをコンパイルするときに-O
-Dコンパイラあなたはマクロが定義されたときに
、コンパイル-std = gnu99に条件を指定-std

第四に、データ型
、なぜデータ型の分類?
ストレージ・スペースを節約し、計算速度を向上させるために。
内蔵:
整数:
署名:その最高のビットのバイナリが、これは符号ビットと呼ばれ、正と負を表すために使用されます。
127 -128〜チャー1が署名
ショート2を締結〜32767 -32768
符号付き整数。4〜-2147483648 2147483647(10桁)
ロング〜4/8 -9223372036854775808 9223372036854775807(19ビット)に署名

注:添加なしに代わって署名され、
符号なし:すべてのビットは、データを表すために使用されます。
255〜0.1チャー符号なし
のunsigned short 65535 2 0〜
unsigned int型。4 0〜4294967295
符号なしロング4/8 0〜18446744073709551615(20桁)

注:データ符号なし、符号なしの基本的な定義を、私たちは再定義を行うためにそれらを使用するための標準ライブラリ(stdint.h)が便利です。
uin8_t、uint16_t、のuint32_t、uint64_tを
フロート:
単精度:フロート4
倍精度:8
精度:長い二12/16
注:科学的計算を表現するメモリ内の浮動小数点データ、特殊なフォーマットは、あります整数演算速度と比較推奨されない特別な要件が存在しない、比較的遅いです。
注:6つの重要な小数点以下の桁数。
浮動小数点データは、「ゼロ値」であるかどうかを確認する方法
0.000001> F && F> -0.000001
:自己
構造体struct、労働組合の組合、列挙型列挙型
シミュレーション:
キャラクター:いわゆる文字は、実メモリピクセルのパターンによるものですストア内の整数です。
必要性は、文字表示ASCII記号に応じた対応関係を表示したとき。
「0」48
「A」97
「A」65
文字表示文字%のCの
注:コンピュータ文字に翻訳する整数であり、文字を記憶します。
ブール:最初のC言語といくつかのブール型の後にありと考えることができる、C言語には、ブール型のではありません。
stdbool.hのコードでは、ヘッダーファイルが含まれている、あなたはブール型を使用することができます。
ブール値TRUE FALSE(値4バイト)。

第五に、定数、変数
、定数:プログラムは、操作データ、リテラル定数、マクロ、定数、列挙定数の間に変更することはできません。
デフォルトでは、int型にある10
3.14デフォルトのタイプダブル
100u8 unsigned charの
100Uのunsigned short
100U unsigned int型
100L unsigned long型
フロート1.0F
1.0L長い二
変数:データ・ストレージ・カートリッジ(容器)、必要用いる定義すること。
定義:データ型変数名;
int型NUM;
注:変数のデフォルト値は、それを初期化するための安全のため、不明です。
実際には、変数の定義は、変数名に割り当てられたシステムメモリブロックへのデータの種類によって決定されますが、このメモリ、メモリサイズをクリーンアップしません。
名前付きルール変数名:
1、数字、英字、アンダースコア。
2、数字で始めることはできません。
3、ユニークなキーワードでなければなりません。
図4に示すように、長さが30を超えてはなりません。
5、名前EENOW(関数、タイプ、アイデンティティ、範囲)を参照して
使用して:
割り当てられている:= 10 NUMと、
計算に関与する:NUM * 100 + 300
の入力および出力変数:
出力にprintfの変数:
printfの型変数名
%HHD% D LD %% HD
%HHU%のHu LU%U%以下
LF LF%F %%
%G示していない不要なゼロ

%桁小数点が.nf提供された後
、データMDの表示幅、充填スペースデフォルト設定%
データを設定%0 MD幅表示を、0補完しない
%が設定左揃え、デフォルトの充填空間-MD
変数の出力値のいずれかのprintfを、そしてあなたは、プログラムの体験を向上させるためにいくつかのヒントを入力することができます。
演習1:変数及び初期化の様々なタイプの定義、
可変表示のprintfの値を使用して。

入力変数の値:
:変数はscanf関数に入る
(ポインタに関連する)変数のアドレスのscanf型。
注:変数名&変数のアドレスを取得するには
、特に、他のすべてが増加することはありませんが、プレースホルダー以外のscanfを\ nはDoが追加しない:注意を。
運動2:変数、scanfの変数を使用してキーボードからの入力のそれぞれの様々なタイプの定義。
そして、変数の値を表示するのprintfを使用しています。

おすすめ

転載: www.cnblogs.com/wzt1/p/11968225.html
おすすめ