引數–傳值呼叫
在c語言中,所有函式引數都是「通過值」傳遞的。也就是說,傳遞給被呼叫函式的引數值存放在臨時變數中,而不是存放在原來的變數中,比如,fortran等語言是「通過引用呼叫」,pascal則採用var引數的方式,在這些語言中,被呼叫的函式必須訪問原始引數,而不是訪問引數的本地副本。
最主要的區別在於,在c語言中,被呼叫的引數不能直接修改主調函式中變數的值,而只能修改其私有的臨時副本的值。
外部變數與作用域
外部變數必須定義在所有函式之外,且只能定義一次,定義後編譯程式將為它分配儲存單元。在每個需要訪問外部變數的函式中,必須宣告相應的外部變數,此時說明其型別。變數宣告時可以用extern語句顯示宣告,也可以通過上下文隱士宣告。
在某些情況下可以省略extern宣告,在原始檔中,如果外部變數的定義出現在使用它的函式之前,那麼在那個函式中就沒必要使用extern宣告。在通常的做法中,所有外部變數的定義都放在原始檔的開始處,這樣就可以省略extern宣告。
如果程式包含在多個原始檔中,而某個變數在file1檔案中定義、file2和file3檔案中使用,那麼在檔案file2與file3中就需要使用extern宣告來建立該變數與其定義之間的聯絡。人們通常把變數和函式extern 宣告放在乙個單獨的檔案中(習慣上稱之為標頭檔案),並在每個原始檔的開頭使用#include 語句把所要用到的標頭檔案包括進來。字尾名.h約定為標頭檔案的副檔名。
變數名命名規則選擇變數名的時候要能夠盡量從字面上表達變數的用途,這樣做不容易引起混淆。
布局變數一般使用較短的變數名(尤其是迴圈控制變數),外部變數使用較長的名字。
名字是由字母和數字組成的序列,但其第乙個字元必須是字母。
下劃線」 _」被看做是字母,通常用於命名較長的變數名,以提高可讀性。
由於例程的名字通常以下劃線開頭,因此變數不要以下劃線開頭。
大寫字母與小寫字母是有區別的。
資料型別及長度名稱
型別長度
限定符char
字元型乙個位元組
int整型
通常反應所用機器中整數的最自然長度short為16位、long為32位
short與long (可省略)
float
單精度浮點型
double
雙精度浮點型
typedef 定義別名dd
struct 結構體
1. 有三種寫法
struct student
這是第一種寫法:
使用:int main()
第二種寫法:
struct student student_1;
這個乙個全域性變數
第三種寫法:沒有給結構體起名字
struct student_1;
這個全域性變數不能再被宣告使用;
C語言學習筆記
include include void swap int p1,int p2 void swapa int arr,int n void printfa int arr,int n int main int argc,char argv swap i,j printfa array,6 swapa...
C語言學習筆記
file 結構 包含在stdio.h裡 ifndef file defined struct iobuf typedef struct iobuf file define file defined endif fread 功 能 從乙個流中讀資料 函式原型 size t fread void buf...
C語言學習筆記
我們學習c語言最開始入門的時候,都是先從c語言學習 c語言教材書籍開始學習,這些是我摘要的一些內容。第一章 c 語言概述 語言概述 1.1 物件導向程式設計基本概念 1.2 c 語言是一種物件導向的程式設計 語言 1.3 c 程式結構的特點 程式結構的特點 1.4 visual c 6.0簡介 簡介...