Time of Update: 2018-12-03
這學期在學計組,這裡將用C++實現各種運算方法,其實那些演算法應該是用電路硬體實現的,用進階語言來描述一遍也挺有意義。說明:輸入輸出的小數均以機器數表示,數值位為4位。#define _CRT_SECURE_NO_WARNINGS#include <iostream>#include <bitset>#include <string>using namespace std;void RightMove(bitset<6> &a,
Time of Update: 2018-12-03
代碼非原創,先記下來:1、播放影音(VC6下通過)#include <windows.h>#include <stdio.h>#include <mmsystem.h>#include <shellapi.h>#include <AFXCOM_.H>#pragma comment(lib,"winmm.lib")void main(){char str[128]={0};int i = 0;char
Time of Update: 2018-12-03
地址:http://blog.csdn.net/justme0/article/details/7994133 寫C#程式就是在設計一個類!先看一個C#程式(運算式求值):using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace ConsoleApplicationCal{ class Program { private static char[
Time of Update: 2018-12-03
在 C 語言中可以用結構體代替類,用函數指標代替成員方法,實現資料成員與成員方法的封裝,在用戶端寫出的程式與 C++ 類似,唯一的不同是 C 語言中調用函數指標成員時必須將本對象的地址傳給函數,因為 C 語言中各函數的地位是相同的。 本文以模仿 STL 中的 vector 類寫了一個 C 語言的 vector 結構體,程式如下:1. vector 的介面/**********************************************************
Time of Update: 2018-12-03
這個學期在學C++,我喜歡思考“記憶體”方面的事,而想來想去又想不通,思而不學則殆啊,也不知道我所想的各種古裡古怪的細節問題是不是在編譯原理那本書裡。1、指標p+1時它知道是移動幾個位元組,它為什麼會知道呢?於是我想指標變數存放的不僅有地址,還應該有指向的類型的大小方面的資訊。int a;int *p =&a;p + 1
Time of Update: 2018-12-03
先看兩個計算斐波拉契數的程式:(1)運行時#include <iostream>using namespace std;const int N = 45;int Fib(unsigned n){if (0 == n) return 0;if (1 == n) return 1;return Fib(n - 1) + Fib(n - 2);}int main(int argc, char **argv){cout << Fib(N) <<
Time of Update: 2018-12-03
在《C++ primer》一書中,將C++的數據類型分爲了兩大類,分別是整型和浮點型。其中整型包括整數,字元,和布爾類型。當然,整數和字元型都可以細分,如int,long,short,unsigned,signed等。浮點型包括float,double,long
Time of Update: 2018-12-03
簡單實現了鏈表的“插入(後插入方式),遍曆”功能,還差刪除、判斷是否為空白功能,代碼如下:#include <stdio.h>#include <string.h>#include <stdlib.h>typedef struct Node{char name[256];struct Node *next;}NODE;NODE *head;void insert_back( char *name){NODE *p = (NODE*)malloc(sizeof(
Time of Update: 2018-12-03
我很討厭一些非IOCCC參賽者寫一些類似IOCCC比賽的代碼。變數名是a,b,c,x,y,z....毫無意義,100line程式不見一行注釋,看了讓人很頭疼。也許是My Code閱讀能力的問題——然而我認為這不是我的問題。為了使我的程式更易讀,我加了很多注釋,並為變數和函數都取了有意義的名字。這道題是DFS+回溯,需要注意的一點是回溯程序呼叫過後要恢複棧原來的狀態。/** problem name: anagrams by stack * coder:mike * date:2011-01-
Time of Update: 2018-12-03
C/C++提供了一個內嵌的特徵來訪問位元組中的為,即位域。位域很有用,因為: 1)如果儲存空間受限,可以在一個位元組中儲存多個布爾變數(真/假)。 2)某些裝置傳輸被編碼為一個位元組中的為的狀態資訊。 3) 某些加密程式需要訪問位元組中的位。 C/C++使用基於結構的方法來訪問位。事實上,位域是結構成員的特殊類型,它以位(bit)為單位定義域的長度。 位域定義的一般形式如下(C++風格) struct struct-type-name {
Time of Update: 2018-12-03
1.首先建立自己的類圖並完成屬性和函數的設定,如下:補充:子類從父類繼承的屬性和函數是需要自己手動寫到子類別檢視中的,比如中的StuBrrower類中的ID屬性和GetID函數是手動寫的,TeaBrrower類沒有手動設定就沒有顯示父類的屬性和函數。PowerDesigner15.1中我沒有找到能通過單擊按鈕實現自動添加從父類整合的屬性和方法。2.單擊功能表列“Language”3.選擇“Generate C++ Code”項4.對彈出頁面進行匯出代碼設定5.完成提示
Time of Update: 2018-12-03
發現了一個收集C puzzle的頁面,挺有意思的,都看了一遍。除去那些常見的Marco、類型轉換、printf格式符、指標和記憶體之類的常見puzzle外,我發現以下一個puzzle很是值得想一想。問題1The following program doesn't "seem" to print "hello-out". (Try executing it) #include <stdio.h> #include <unistd.h> int main() ...
Time of Update: 2018-12-03
<>先去系統目錄中找標頭檔,如果沒有在到目前的目錄下找。所以像標準的標頭檔 stdio.h、stdlib.h等用這個方法。 而""首先在目前的目錄下尋找,如果找不到,再到系統目錄中尋找。 這個用於include自訂的標頭檔,讓系統優先使用目前的目錄中定義的。 When writing your C program, you can include files in two ways. The first way is to surround the file you want to
Time of Update: 2018-12-03
C++ sizeof運算子在使用中有許多值得注意的地方,其間涉及的知識也很多。這裡我把它的用法總結如下:(一)對基本類型 的操作對於基本類型sizeof返回這種資料類型所佔用的記憶體空間大小。在VC++6.0下運行結果:sizeof(int)=4sizeof(unsigned int)=4sizeof(long)=4sizeof(unsigned long)=4sizeof(float)=4sizeof(double)=8sizeof(long
Time of Update: 2018-12-03
做一下小測驗,熟悉一下過程幀的結構。通過下面的代碼,即可找到函數的返回地址:#include <stdio.h>int evil(int para) { int var = 10; printf("evil\n"); printf("address ¶ is:%p, has value:%p\n", ¶, (void*) *(¶) ); printf("address &var is:%p, has
Time of Update: 2018-12-03
int的大小是4,定義vector<int> vec,vec中有一個元素,sizeof(vec)=20,如果有1000個元素,則sizeof(vec)是多少?#include <iostream>#include <vector>using namespace std;int main(){ vector<int> vec; for(int i=0;i<100;i++)
Time of Update: 2018-12-03
UNIX/Linux下C語言的學習路線。一、工具篇“公欲善其事,必先利其器”。編程是一門實踐性很強的工作,在你以後的學習或工作中,你將常常會與以下工具打交道, 下面列出學習C語言編程常常用到的軟體和工具。1、作業系統 在UNIX或Linux系統中學習C很方便,所以在開始您的學習旅程前請先選擇一個UNIX或Linux作業系統,目前可供個人免費使用的UNIX或Linux系統有FreeBSD、RedHat Linux、SUSE Linux等,而且在安裝包中還提供很多實用的工具,如:gcc,
Time of Update: 2018-12-03
C語言中的__attribute__機制 來源: ChinaUnix部落格 日期: 2008.09.25 15:52 (共有0條評論) 我要評論 GNU C的一大特色(卻不被初學者所知)就是__attribute__機制。__attribute__可以設定函數屬性(Function Attribute)、變數屬性(Variable Attribute)和類型屬性(Type
Time of Update: 2018-12-03
字串常量是儲存在常量儲存區(文字常量區),因此不能改變其值。#include <iostream>using namespace std;int main(void){ char *p="C++"; *(p+1)='d'; cout<<*p<<endl; char ch[]="c++"; ch[0]='d'; cout<<ch<<endl; return
Time of Update: 2018-12-03
對於一個c/c++程式員來說,記憶體流失是一個常見的也是令人頭疼的問題。已經有許多技術被研究出來以應對這個問題,比如Smart Pointer,Garbage Collection等。Smart Pointer技術比較成熟,STL中已經包含支援SmartPointer的class,但是它的使用似乎並不廣泛,而且它也不能解決所有的問題;Garbage