Time of Update: 2017-01-18
C語言的函數庫是多組經過驗證的常用函數的集合,編寫C語言程式時使用庫函數,既可以提高程式運行效率,又可以提高編程品質,使用方法如#include
Time of Update: 2017-01-18
1. 左值與右值: C++對於左值和右值沒有標準定義,但是有一個被廣泛認同的說法:可以取地址的,有名字的,非臨時的就是左值;不能取地址的,沒有名字的,臨時的就是右值. 可見立即數,函數返回的值等都是右值;而非匿名對象(包括變數),函數返回的引用,const對象等都是左值.
Time of Update: 2017-01-18
fscanf() 和 fprintf() 函數與前面使用的 scanf() 和 printf() 功能相似,都是格式化讀寫函數,兩者的區別在於 fscanf() 和 fprintf() 的讀寫對象不是鍵盤和顯示器,而是磁碟檔案。這兩個函數的原型為:int fscanf ( FILE *fp, char * format, ... );int fprintf ( FILE *fp, char * format, ... );fp 為檔案指標,format 為格式控制字元串,...
Time of Update: 2017-01-18
在C語言中,讀寫檔案比較靈活,既可以每次讀寫一個字元,也可以讀寫一個字串,甚至是任意位元組的資料(資料區塊)。本節介紹以字元形式讀寫檔案。以字元形式讀寫檔案時,每次可以從檔案中讀取一個字元,或者向檔案中寫入一個字元。主要使用兩個函數:fgetc()和fputc()。字元讀取函數 fgetcfgetc 是 file get char 的縮寫,意思是從指定的檔案中讀取一個字元。它的原型為:int fgetc (FILE *fp);fp 為檔案指標。fgetc()
Time of Update: 2017-01-18
所謂位元運算,就是對一個位元(Bit)位進行操作。在《二進位思想以及資料的儲存》一節中講到,位元(Bit)是一個電子元器件,8個位元構成一個位元組(Byte),它已經是粒度最小的可操作單元了。C語言提供了六種位元運算符: 運算子 & | ^ ~ << >> 說明 按位與 按位或 按位異或 取反 左移 右移
Time of Update: 2017-01-18
有些資料在儲存時並不需要佔用一個完整的位元組,只需要佔用一個或幾個二進位位即可。例如開關只有通電和斷電兩種狀態,用 0 和 1 表示足以,也就是用一個二進位。正是基於這種考慮,C語言又提供了一種叫做位域的資料結構。在結構體定義時,我們可以指定某個成員變數所佔用的二進位位元(Bit),這就是位域。請看下面的例子:struct bs{ unsigned m; unsigned n: 4; unsigned char ch: 6;}:後面的數字用來限定成員變數佔用的位元。成員 m
Time of Update: 2017-01-18
在C語言中,函數的參數不僅可以是整數、小數、字元等具體的資料,還可以是指向它們的指標。用指標變數作函數參數可以將函數外部的地址傳遞到函數內部,使得在函數內部可以操作函數外部的資料,並且這些資料不會隨著函數的結束而被銷毀。像數組、字串、動態分配的記憶體等都是一系列資料的集合,沒有辦法通過一個參數全部傳入函數內部,只能傳遞它們的指標,在函數內部通過指標來影響這些資料集合。有的時候,對於整數、小數、字元等基本類型資料的操作也必須要藉助指標,一個典型的例子就是交換兩個變數的值。有些初學者可能會使用下面的
Time of Update: 2017-01-18
數組(Array)是一系列具有相同類型的資料的集合,每一份資料叫做一個數組元素(Element)。數組中的所有元素在記憶體中是連續排列的,整個數組佔用的是一塊記憶體。以int arr[] = { 99, 15, 100, 888, 252 };為例,該數組在記憶體中的分布如下圖所示:定義數組時,要給出數組名和數組長度,數組名可以認為是一個指標,它指向數組的第 0 個元素。在C語言中,我們將第 0 個元素的地址稱為數組的首地址。以上面的數組為例,下圖是 arr
Time of Update: 2017-01-18
指標變數儲存的是地址,本質上是一個整數,可以進行部分運算,例如加法、減法、比較等,請看下面的代碼:#include <stdio.h>int main(){ int a = 10, *pa = &a, *paa = &a; double b = 99.9, *pb = &b; char c = '@', *pc = &c; //最初的值 printf("&a=%#X, pa=%#X, pb=%#X, pc=%#X\n", &a, pa, pb, pc);
Time of Update: 2017-01-18
實現順序表的插入,刪除,尋找,輸出操作在C語言中經常用到。下面小編給大家整理實現代碼,一起看下吧代碼如下所示:#include<iostream>using namespace std;#define MAXSIZE 15typedef int DataType;typedef struct{DataType data[MAXSIZE]; //通常用一位元組來描述順序表的資料存放區int SeqLength; /*線性表長度*/} SeqList;SeqList
Time of Update: 2017-01-18
前言 我們知道,在數學中,數值的大小是沒有上限的,但是在電腦中,由於字長的限制,電腦所能表示的範圍是有限的,當我們對比較小的數進行運算時,如:1234+5678,這樣的數值並沒有超出電腦的表示範圍,所以可以運算。但是當我們在實際的應用中進行大量的資料處理時,會發現參與運算的數往往超過電腦的基礎資料型別 (Elementary Data
Time of Update: 2017-01-18
本文針對C++建構函式進行深度探究,供大家參考,具體內容如下1、引子: 以下代碼中的輸出語句輸出0嗎,為什嗎?struct Test{ int _a; Test(int a) : _a(a) {} Test() { Test(0); }};Test obj;cout << obj._a << endl; 輸出為:-8589934602、剖析上面代碼的輸出為一個垃圾值,也就是說obj調用建構函式並沒有對成員進行初始化工作,雖然預設無參構造Test(
Time of Update: 2017-01-18
如果你覺得重新編譯檔案的時間很短或者時間長一點無所謂,反正需要重新編譯,那麼你也可以選擇略過此文,不過也建議瀏覽。如果你想學習或者關心這塊內容,那麼此文必定會給你帶來收穫。首先我不給出依存關係的定義,我給出一個例子。複製代碼 代碼如下: class Peopel{ public: People(const std::string & name,const Date& brithday,Image Img)
Time of Update: 2017-01-18
下面詳細介紹 一、初始化與初始賦值 首先說說類的初始化與初始賦值之前的區別,這也許裡面可能有我們不知道的事情。 其實類初始化與初始賦值還是有區別的。 複製代碼 代碼如下: class People{ public: People(std::string name,int age,int height); private: std::string m_sName; int m_iAge; int m_iHeight; } //賦值 People::People(std::string
Time of Update: 2017-01-18
程式設計要求用C語言寫一個簡單的火車售票系統,主要實現的功能為:錄入班次資訊瀏覽班次資訊按班次號查詢按終點站查詢按餘票數量排序儲存售票退票更新班次資訊退出系統所有的班次資訊儲存在number.dat檔案中,排序過後的儲存在sort.dat中(.dat是一種二進位檔案)。在編寫的過程中我覺得在判斷火車的狀態比較值得深究。這裡假設火車主要有四種狀態:1.未發車2.已發車3.停止檢票4.停止退票在程式中,思路是將代表發車時間的字串轉化為整型,再和系統現在的時間進行大小比較,主要採用if判斷各種情況。其
Time of Update: 2017-01-18
說明:本人使用的是vc++ IDE:vs2013我在自訂一些類時,有時會取一些很長的名字,但是這不利於使用,這個時候就可以使用類型名簡化。class MathAddBBBB{};using MAB = MathAddBBBB;除了使用using之外,我們還可以使用typedef來定義:typedef MathAddBBBB mab;mab m();以上這篇初學C++之自訂類型名簡化詳解就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援雲棲社區。
Time of Update: 2017-01-18
需求:1.設計一個詞頻統計軟體,統計給定英文文章的單詞頻率。2.文章中包含的標點不計入統計。3.將統計結果以從大到小的排序方式輸出。設計:1.因為是跨專業0.0···並不會c++和java,只能用僅學過的C語言進行編寫,還是挺費勁的。2.定義一個包含單詞和頻率兩個成員的結構體來統計詞頻(進行了動態分配記憶體,可以處理較大文本)。3.使用fopen函數讀取指定的文檔。4.使用fgetc函數擷取字元,再根據取得的字元是否是字母進行不同的處理。5.採用快速排序法對統計結果進行排序。5.將整個統計結果迴
Time of Update: 2017-01-18
C/C++ string庫(string.h)提供了幾個字串尋找函數,如下:memchr 在指定記憶體裡定位給定字元strchr 在指定字串裡定位給定字元strcspn 返回在字串str1裡找到字串str2裡的任意一個字元之前已尋找的字元數量strrchr 在字串裡定位給定字元最後一次出現的位置strpbrk 在字串str1裡定位字串str2裡任意一個首次出現的字元strspn 返回字串str1從開始字元到第一個不在str2中的字元個數strstr
Time of Update: 2017-01-18
一個C++類中的變數如果如下關鍵字作為修飾符.1. public: 程式的任何地方都可以訪問.2 protected: 只有類本身及其衍生類別和其友元函數,友元類可以訪問.3 private: 只有類本身及其友元函數,友元類可以訪問.4 friend: 用於定義友元函數友元類. 在類裡聲明的一個普通函數,在前面加上friend修飾符,這個函數就可以訪問該類的一切成員,包括private成員.下面在看下c++ public private protected關鍵字1、當在類的內部使用這三個關鍵字,
Time of Update: 2017-01-18
c語言中的逸出字元:\a 響鈴符\b 退格\f 換頁符\n 分行符號\r 斷行符號符(回到該行的首位置)\v 縱向定位字元\\ 反斜線\? 問號(?經vs10測試可以直接列印)\"(\') 雙引號(單引號)\ooo 八位元(ooo表示一個用8進位數表示出來的對應ANSII代碼對應出字元,用此方法可以表示出所有ASCII字元。不過測試發現打不出%號,存疑!)\xhh