Time of Update: 2017-01-18
寫了一個比較粗糙的C語言程式碼數統計指令碼,目前還有些bug,而且效率也不高。指令碼主要就是去除大部分的注釋後統計行數,相當於做了一部分預先處理的工作。下面是代碼:#!/bin/bash filename=$1echo "`whoami`"if [ $# -lt 1 ];then echo "usage : ./scripts filename" exit -1fiif [ ! -f $filename ];then echo "$filename is not a file" exit
Time of Update: 2017-01-18
Lua 通過一個虛擬棧與 C 的互動,正數索引自底向上取值,負數索引自頂向下取值。Lua 中的 Table(表)結構可以使用任何資料作為 key 進行取值。使用 C API 訪問 Table 中的元素有兩種方法:複製代碼 代碼如下:lua_getglobal(L, t);lua_pushinteger(L, k); -- 這裡可以換成其它類型的 lua_pushXXXX(L, k) 壓資料到棧頂作keylua_gettable(L, -2);lua_getglobal(L,
Time of Update: 2017-01-18
Lua 是一門輕巧、靈活、擴充性很強的指令碼語言,它可以很容易的嵌入到其他語言(C/C++)中使用,這主要得益於其提供了功能強大的 C API,這讓其跟 C/C++ 間的互調成為一件很輕鬆的事。Lua 調用 CLua 調用 C 函數,其實就是把 C 函數註冊到 Lua 中去,把 C 函數地址傳遞給 Lua 解譯器。這個傳遞是要遵循一個的協議的,即:複製代碼 代碼如下:typedef int (*lua_CFunction)(lua_State* L)Lua 和 C
Time of Update: 2017-01-18
前言 一直沒有系統去看過c++,因為懂得一些c的基本文法,在實際編程中用到c++,只能用到哪些看哪些,發現這樣雖然能夠完成大部分工作,但是有時候效率實在太低,比如說這節要講的Std::sort()函數的使用,調了半天才調通。開通c/c++序列部落格是記錄在使用c++中一些難題,避免以後重犯錯,當然以後會盡量擠出時間來較系統學習下c++。 開發環境:QtCreator2.5.1+OpenCV2.4.3 實驗基礎 首先來看看std中的快速排序演算法sort的使用方法: template
Time of Update: 2017-01-18
程式碼如下:複製代碼 代碼如下:// BubbleSort.cpp : 定義控制台應用程式的進入點。//#include "stdafx.h"#include <cmath>#include <iostream>using namespace std;#define MAXNUM 20template<typename T>void Swap(T& a, T& b){ int t = a;
Time of Update: 2017-01-18
“一個真正的程式員是不用IDE(譯者註:整合式開發環境)的,他們都是用帶著某某外掛程式的文字編輯器來寫代碼。”我們總能在某些地方聽到此類觀點。然 而,儘管越來越多的人同意這樣的觀點,但是一個IDE仍然非常有用,它設定簡單,使用起來也很方便,因此不能比這樣更合適編寫一個項目了。所以鑒於這點, 在這裡我想給大家列一份在Linux平台上比較好的C/C++ IDE清單。為什麼特地說C/C++呢?因為C語言是我最喜歡的程式設計語言,而且我們總要找個切入點來開始。另外要注意的是,通常有很多種編寫C代碼的方
Time of Update: 2017-01-18
先看下面的程式:複製代碼 代碼如下:void main() { int a = 100; int *ap = &a; printf("%p\n",&a);//輸出:002AF744 printf("%p\n",ap);//輸出:002AF744 printf("%d\n",*ap);//輸出:100
Time of Update: 2017-01-18
資料在記憶體的存放有以下幾種形式1.棧區--由編譯器自動分配並且釋放,該地區一般存放函數的參數值,局部變數的值等,
Time of Update: 2017-01-18
在C中,預設的基礎資料類型均為signed,現在我們以char為例,說明(signed) char與unsigned char之間的區別。首先在記憶體中,char與unsigned char沒有什麼不同,都是一個位元組,唯一的區別是,char的最高位為符號位,因此char能表示-127~127,unsigned
Time of Update: 2017-01-18
如何用C++和node互動,在node的程式中,如果有大資料量的計算,處理起來比較慢,可以用C++來處理,然後通過回調(callback的形式),返回給node。先回顧一下正統的用 C++ 開發 native 模組的方法#include <node.h> #include <v8.h> using namespace v8; // 這裡是 hello 函數的 C++ 實現部分 Handle<Value> Method(const Arguments&
Time of Update: 2017-01-18
為何學習iOS開發要先學C語言呢,學習c語言對ios開發有何作用。現在越來越多的iOS開發興趣愛好者投入到了iOS培訓中,有的是已經在職的員工,有的是還在就讀的學生,還有一些是完全零基礎的同學,那麼對於他們來說就要一切從基礎開始學,首先從C語言學起。因為C語言是一門語言基礎,因具備簡潔、靈活等特點而被廣泛應用,在多種開發環境中都起著重要作用。那麼,為什麼學習iOS開發要先學C語言呢? 因為在iOS開發中,會經常使用C語言和彙編的,而組合語言相對而言要生澀繁瑣些,C語言因此便成為程式員的首選。而
Time of Update: 2017-01-18
有一段時間,Regex學習很火熱很潮流,當時在CSDN一天就能看到好幾個Regex的文章,那段時間藉助論壇以及Wrox Press出版的《C#字串和Regex參考手冊》學習了一些基礎的知識,同時也為我在CSDN大概賺了1000分,今天想起來,去找《C#字串和Regex參考手冊》時,已經不知所蹤了。(1)“@”符號
Time of Update: 2017-01-18
搜尋引擎中一個比較重要的環節就是從網頁中抽取出有效內容。簡單來說,就是吧HTML文本中的HTML標記去掉,留下我們用IE等瀏覽器開啟HTML文檔看到的部分(我們這裡不考慮圖片). 將HTML文本中的標記分為:注釋,script ,style,以及其他標記分別去掉: 1.去注釋,正則為: output = Regex.Replace(input, @"<!--[^-]*-->", string.Empty, RegexOptions.IgnoreCase);
Time of Update: 2017-01-18
單體模式(Singleton)是經常為了保證應用程式操作某一全域對象,讓其保持一致而產生的對象,例如對檔案的讀寫操作的鎖定,資料庫操作的時候的交易回復,還有工作管理員操作,都是一單體模式讀取的。 建立一個單體模式類,必須符合三個條件: 1:私人建構函式(防止其他對象建立執行個體); 2:一個單體類型的私人變數; 3:靜態全域擷取介面
Time of Update: 2017-01-18
作為一個小型的資料存放區傳遞的工具——XML,大家肯定也不陌生,今天就關於XML的一些簡單操作做些總結。這些都是在控制台進行操作的·····1.建立XML1)建立普通XML static void Main(string[] args) { //通過代碼來建立XML文檔 //1、引用命名空間 //2、建立XML文檔對象 XmlDocument doc = new XmlDocument(); //3、建立第一個行描述資訊,並且添加到doc文檔中
Time of Update: 2017-01-18
最近研究C#相關的ORC技術,Image Recognition一般C和C++這種底層語言做的比較多,C#主要是依託一些封裝好的組件進行調用,這裡介紹三種身份證識別的方法。一:調用大公司API介面,百度、雲脈,文通科技都有相關的API介紹。二:調用影像處理類庫,EmguCV是OpenCV的一個跨平台的.Net封裝,該封裝也可以被編譯到Mono平台和允許在Windows、Mac OS、Android、iPhone、iPad等多個平台上運行三:調用Office2007
Time of Update: 2017-01-18
Regex(regular expression)描述了一種字串匹配的模式,可以用來檢查一個串是否含有某種子串、將匹配的子串做替換或者從某個串中取出符合某個條件的子串等。轉義匹配文法: “\”+實際字元 \ . * + ? | ( ) { }^ $ [ ] 例如:\\匹配字元“\” \n 匹配換行 \r 匹配斷行符號 \t 匹配水平定位字元 \v 匹配垂直定位字元 \f 匹配換頁 \nnn 匹配一個8進位ASCII \xnn 匹配一個16進位ASCII \unnnn
Time of Update: 2017-01-18
C#可以直接引用C++的DLL和轉換JAVA寫好的程式。最近由於工作原因接觸這方面比較多,根據實際需求,我們通過一個具體例子把一個JAVA方法轉換成可以由C#直接調用的DLLC#調用c++C#調用C++的例子網上很多,以一個C++的具體方法為例。C++代碼// 擷取一幀映像資料MVSMARTCAMCTRL_API int __stdcall MV_SC_GetOneFrame(IN void* handle, IN OUT unsigned char *pData , IN unsigned
Time of Update: 2017-01-18
namespace MyExtensionMethods { public static class MyExtensions { public static int MyGetLength(this System.String target) { return target.Length; } } } 使用時,需要引入這個名字空間,引用如下:string str = "dafasdf"; int len = str.MyGetLength();
Time of Update: 2017-01-18
static的全部用法 要理解static,就必須要先理解另一個與之相對的關鍵字,很多人可能都還不知道有這個關鍵字,那就是auto,其實我們通常聲明的不用static修飾的變數,都是auto的,因為它是預設的,就象short和long總是預設為int一樣;我們通常聲明一個變數: int a; string s;