原创 C++綜合系列之模擬棧模版(數組版及單鏈表版)

一:棧模版(數組版): stack.h #ifndef MYSTACK_ARRAY_H #define MYSTACK_ARRAY_H #include <iostream> using namespace std; temp

原创 二叉樹創建以及遍歷(遞歸和非遞歸方式)

#include <iostream> #include <assert.h> #include <stack> using namespace std; typedef struct biTreeNode { cha

原创 函數高扇入合理扇出

扇出是指一個函數直接調用(控制)其它函數的數目,而扇入是指有多少上級函數調 用它。 扇出過大,表明函數過分複雜,需要控制和協調過多的下級函數;而扇出過小,如總是1 , 表明函數的調用層次可能過多, 這樣不利程序閱讀和函數結構的

原创 設定指定內存位置的值

嵌入式系統經常具有要求程序員去訪問某特定的內存位置的特點。在某工程中,要求設置一絕對地址爲0x67a9的整型變量的值爲0xaa55。編譯器是一個純粹的ANSI編譯器。這一問題測試你是否知道爲了訪問一絕對地址把一個整型數強制轉換(t

原创 函數可重入

可重入(reentrant)函數可以由多於一個任務併發使用,而不必擔心數據錯誤。相反,不可重入( non-reentrant)函數不能由超過一個任務所共享,除非能確保函數的互斥 (或者使用信號量,或者在代碼的關鍵部分禁用中斷)。可

原创 經典悖論

上帝悖論 命題:上帝能創造出一塊他搬不動的石頭嗎? 如果回答能,那麼上帝能創造出石頭,但是那塊石頭他搬不動,所以在力量上面上帝不是萬能的;如果回答不能,那麼上帝連一塊石頭都創造不了,說明上帝在創造力上面不是萬能的。 (1)宗教

原创 編程思想

總所周知,Pascal之父–Nicklaus Wirth的經典語錄被程序界奉爲圭臬: “算法+數據結構=程序”。 算法和數據結構是基石,編程語言技巧是空架子,設計模式是藍圖。無論是宏觀橫向的框架還是縱向微觀具體到某一個函數其本質都

原创 抓取網頁中手機號碼

telephone.py # coding:utf-8 import re import requests import os import sys from requests.exceptions import ReadTime

原创 算法之斐波納契數列

#include <stdio.h> using namespace std; int fibonacci_recursive(int a) { int sum; if(a <= 0)

原创 軟件項目開發管理工具

1.scrumwise/teambition(項目管理工具) 2.Review Board(代碼審查工具) 3.Jenkins(自動化集成服務器工具) 4.MantisBT(bug管理工具) 5.Goolgle Test(單元測試

原创 c++模版聲明定義及使用方式

三種方式: (1)模板的聲明和定義都放置在同一個.h文件中(最佳)。 (2)聲明和實現分離,包含.cpp文件。注意:不是所有編譯器都支持此做法。 (3)使用export使聲明實現分離。注意:並非所有編譯器都支持export關

原创 堆棧實現計算數學表達式

直接用兩個棧計算方法子程序流程圖 #include<stdio.h> #include<string.h> #include<math.h> #include<stdlib.h> #include<math.h> #inclu

原创 Qt簡史

Our Story A conversation. That’s all it took. An honest, open and frank discussion between two young developer

原创 關於Qt程序崩潰沒有正常退出造成下一次無法繼續打開的問題解決

打開C:\Users\用戶名\AppData\Local\cache\qtshadercache目錄,刪除裏面的臨時文件,便可以解決。

原创 軟件開發流程

項目總結: 1.幾種常用的軟件開發模型:邊做邊改模型、瀑布模型、增量(迭代)模型、快速原型模型、螺旋模型、敏捷原型等。 2.軟件開發要符合SQA質量管理。 3.開發過程中注意代碼的健壯性、穩定性、安全性、高效性等。