C語言學習筆記

2021-06-16 07:41:10 字數 1475 閱讀 6256

file 結構(包含在stdio.h裡)

#ifndef _file_defined

struct _iobuf ;

typedef struct _iobuf file;

#define _file_defined

#endif

fread

功 能: 從乙個流中讀資料

函式原型:size_t fread( void *buffer, size_tsize, size_tcount, file *stream);

參 數:

1.用於接收資料的位址(指標)(

buffer)

2.單個元素的大小(size) :單位是位元組而不是位,例如讀取乙個int型資料就是4個位元組

3.元素個數(

count)

4.提供資料的檔案指標(stream)

返回值:成功讀取的元素個數

一,將乙個數以16禁制輸出格式:

int var = 16;

printf("#x\n", var); // 列印出0x10

二,指標就是位址,是記憶體單元的編號。指標變數是儲存指標的變數。

指標的重要性(c語言)

1, 可以用來表示一些複雜的資料結構

2, 快速地傳遞資料

3, 直接訪問硬體

4, 使函式返回乙個以上的值

5, 能夠很方便地處理字串

6, 是理解物件導向程式設計引用的基礎

7, 指標是c語言的靈魂

常見指標錯誤的乙個典型例子:

#includeint main()

三,將乙個陣列傳送給乙個函式,則處理函式的形參必須包含陣列的位址和長度。
假如有乙個陣列 int array[4] = ; 則求和函式原型可以寫成這樣:int add(int *p, int len);

四,靜態記憶體和動態內容比較

靜態記憶體是由系統自動分配,由系統自動釋放,是在棧內分配的。

動態記憶體是由程式設計師手動分配,手動釋放,是在堆內分配的。

五,多級指標

int i = 5;

int *p = &i;

int **q = &p;

int ***r = &q;

r = &p; //錯誤, 因為r是int ***型別,r只能存放int **型別變數的位址

六,已知補碼求真值

如果最高位為0,則為正數,其真值等於最高位後面的二進位制對應的10進製數。

如果最高位為1,則為負數,其真值可按如下方法來求:

先將所有位取反,然後末尾加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語言學習筆記

我們學習c語言最開始入門的時候,都是先從c語言學習 c語言教材書籍開始學習,這些是我摘要的一些內容。第一章 c 語言概述 語言概述 1.1 物件導向程式設計基本概念 1.2 c 語言是一種物件導向的程式設計 語言 1.3 c 程式結構的特點 程式結構的特點 1.4 visual c 6.0簡介 簡介...

c語言學習筆記

1 輸出資料格式控制 1 m.nf m.ns g 的用法 2 想要輸出 用兩個 如printf 3 scanf附加個數說明符 l,h 短整型資料 域寬,本輸入項不賦給相應的變數 4 已知三角形三條邊a,b,c 求面積area s a b c 2 area sqrt s s a s b s c 6 優...