Time of Update: 2018-12-07
Android C編程技巧運行模擬器 emulator -console * 將檔案寫入到模擬器的userdata.img檔案中 adb push *將一個目錄拷貝到模擬器中,包括子目錄 adb push * 將一個目錄從模擬器中拷出來 adb pull * 使得模擬器可以運行arm代碼. 使用GNU/ARM Linux編譯器編譯你的應用程式就可以了 * 在模擬器裡面運行shell,需要先運行模擬器 adb shell *運行模擬器中的一個控制台程式 adb
Time of Update: 2018-12-07
也是最近被問的一個問題,全域變數在哪個階段初始化? 這個問題到沒被問倒,全域變數在mainCRTStartup之後main調用之前,在該階段應用會完成堆記憶體的申請(記得哪裡還看到如果改了EntryPoint需要自己進行堆記憶體的申請和管理).而全域變數也正是在該階段完成的初始化. 然後又被問,那麼全域變數在哪裡被釋放?回答是在應用退出之後main函數退出之後,這個回答也沒問題.基本上算是正確的.但是回頭自己仔細想想,那麼全域變數又是怎麼樣被初始化的呢?還真的有點不太清楚,所以出於好奇,今晚開始
Time of Update: 2018-12-07
/// <summary> /// 遍曆CookieContainer /// </summary> /// <param name="cc"></param> /// <returns></returns> public static List<Cookie> GetAllCookies(CookieContainer cc)
Time of Update: 2018-12-07
主要是想實現一個函數,判斷本進程是否是多線程。根據情況 顯示不同的內容。現在還不知道 待補充。。。mark。研究了一下 去看雪論壇 找了下資料 有一個樣本 http://bbs.pediy.com/showthread.php?t=98078然後 我琢磨了半天
Time of Update: 2018-12-07
經常看到別人的標頭檔 有這樣的代碼#ifdef __cplusplusextern "C" {#endif// C 樣式 的函數#ifdef __cplusplus}#endif為什麼要這樣呢?因為 C 語言不支援重載函數 也就是同名函數,參數卻不一樣,C++支援,其編譯器對函數名的處理方法不一樣,導致 雖然都是C 樣式的函數,不同編譯器編譯出來的不一樣。如果 是 C語言 編譯的中間檔案,要C++ 來調用,那麼就需要這個 了,C++ 有了 extern "C" 就會按照 C
Time of Update: 2018-12-07
Windows C++ 擷取當前檔案夾下有幾個檔案百度下 居然沒有。linux下通過:struct dirent **namelist;int total=scandir(dir,&namelist,0,alphasort);for(i=0;i<total;i++){ free(namelist[i]);}free(namelist);//scandir後需要釋放空間的!!!!!!!就可以搞定,在windows下沒有dirent.h 標頭檔和實現。難道 這個 也算是
Time of Update: 2018-12-07
原地址:http://www.delphi3000.com/articles/article_4028.asp?SK=這裡加上了一個PartOf函數,使行為和StrTok的一樣。 Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->unit Unit1;interface function StrTok(S: string; Tok: string =
Time of Update: 2018-12-07
.NET封裝了EXCEL相關的類,以下是實現在程式中標工具條中點擊“EXCEL輸出”按鈕而觸發的事件,前提是你的系統中裝有EXCEL。這是My Code,有注釋說明:private void toolBar1_ButtonClick(object sender, System.Windows.Forms.ToolBarButtonClickEventArgs
Time of Update: 2018-12-07
C#編程中關於資料緩衝的經驗總結一直以來,我都發現程式的運行速度不夠理想。通過查代碼,發現程式對資料庫的訪問非常頻繁,而且檢索出來的資料量比較大。為了讓程式運行快起來,我想對程式採用適當的緩衝方法。我在C#嘗試了5種方法進行資料緩衝,具體如下:(如有遺漏,錯誤歡迎大家指正,歡迎提建議。)1:Session方法:此方法是針對於每個使用者來的,如果使用者量比較大,那麼建議不要採用此方法,否則會大量耗盡伺服器資源。2:Cache方法:
Time of Update: 2018-12-07
下面是一個C程式,其想要輸出20個減號,不過,粗心的程式員把代碼寫錯了,你需要把下面的代碼修改正確,不過,你只能增加或是修改其中的一個字元,請你給出三種答案1 int n = 20; 2 3 4 5 for(int i = 0; i < n; i--){ 6 7 printf("-"); 8 9 }
Time of Update: 2018-12-07
編寫C的原始碼,有很多種辦法。很多人在Visual C++的整合編譯環境下寫代碼,當然可以。可是我覺得,Visual C++實在是太大了,光啟動就要好幾秒鐘。作為演算法競賽來說,實在是有點兒“高射炮打蚊子”的感覺。如果用記事本來寫C的原始碼,當然也可以,可是寫出來的都是“白紙黑字”不那麼美觀。我寫C原始碼的時候,用的是Notepad2,你看:她的特點和優勢在於:標題列有原始碼檔案名稱和所在路徑 左側有行號顯示 原始碼有顏色提示關鍵字啊、數值啊、字串啊什麼的,很醒目 當前行有淡黃色的背景提示
Time of Update: 2018-12-07
今天的C# 入門課中我示範了如何使用Editplus這個工具來編寫/編譯/調試/運行 *.cs檔案,在這裡我再度操作一次。 首先選擇Editplus->Tools->Configure User Tools;然後選擇配置編譯對象的方法再配置啟動並執行方法OK. 最後說明下$(FileName)等字串表示什麼意思,平時我們調用"csc.exe"這個C#的編譯器的時候,都是通過運行"csc.exe
Time of Update: 2018-12-07
源碼下載:點擊下載源碼如下: #include <iostream>#include <io.h>#include <sys\stat.h>#include <afx.h>#define _AFXDLLusing namespace std;void main(){ // 此檔案在工程開啟狀態下為不可訪問 char* filepath = "..\\test.ncb"; // 方法一 struct _stat info;
Time of Update: 2018-12-07
使用宏對函數進行擴充 #define WriteLogDebugInfo(s...) WriteLogDebugInfos(__FILE__,__LINE__,##s); // 日誌使用原則部分int WriteLogDebugInfos(const char *pFile,int nline,const char *pchMsg); 我之前定義的函數是 WriteLogDebugInfo(),但是我需要增加一些參數,這個函數被多個地方調用,我不希望改變傳入的參數(特別是這些參數是固定的,
Time of Update: 2018-12-07
在手冊上有 time ctime gmtime localtime asctime mktime settimeofday,gettimeofday等時間函數還有UTC和本機時間和這些函數的區別.瞭解這些 是linux時間編程必須得!首先說基本的結構體和typedef 以及define:time_t <time.h>#ifndef __TIME_T#define __TIME_T /* 避免重複定義 time_t */typedef long time_t;
Time of Update: 2018-12-07
現在用C語言,感覺很難寫出高品質的代碼,我覺得這個和編程方法,以及編程思想有許多關係,百度也找不到什麼好的資料,有一些書 unix進階編程 ek2k有pdf的,應該不錯.現在呢,我就通過看別人的代碼來提高自己吧...現在在看nginx 1.1.15的源碼,源碼比較龐大,我不是為了研究它而去看,而是 看其中的編程方法,以及關於 多線程 /進程 ,資料通訊 相關的代碼.其中看到這個:typedef time_t (*ngx_path_manager_pt) (void *data);不知道
Time of Update: 2018-12-07
這個 都是經驗之談:比如 1.不能把 static變數放到標頭檔標頭檔 要放 只能放 extern 聲明外部變數,而不能直接有全域變數,或static變數。 2.標頭檔 #include"" 不一定必須放到 標頭檔中去,有時候 必須要放到 實現檔案中去。比如A.h 要使用B.h 但 B.h 也要使用A.h ,A.h 包括B.h 的時候 會出問題的。因為 標頭檔前面是 #pragma once 避免重複調用標頭檔。A.h的progma once一調用,但還#include"B.h"
Time of Update: 2018-12-07
直接上代碼。其實這是對類 和 指標 理解的一個案例。#include<stdio.h>#include<windows.h>#include<iostream>using std::endl;using std::cout;/*****************事實證明: 類的一般執行個體對象 只在所在函數有效,函數結束,這個類執行個體自動釋放資源。***************/#define DEBUG_FUNCTION_LINE()
Time of Update: 2018-12-07
c語言沒有像java那麼豐富的字串操作函數,很多有用的函數得自己寫,搞了一天,寫了幾個常用函數,留著以後有用。 [cpp] view plaincopy#include <string.h> #include <stdio.h> /*將str1字串中第一次出現的str2字串替換成str3*/ void replaceFirst(char *str1,char *str2,char *str3) { char str4[strlen(str1)+1];
Time of Update: 2018-12-07
ulimint -a 用來顯示當前的各種使用者進程限制Linux對於每個使用者,系統限制其最大進程數,為提高效能,可以根據裝置資源情況,設定個Linux使用者的最大進程數,一些需要設定為無限制:資料區段長度:ulimit -d unlimited最大記憶體大小:ulimit -m unlimited堆棧大小:ulimit -s unlimited我們在用這個命令的時候主要是為了產生core檔案,就是程式運行發行段錯誤時的檔案:ulimit -c unlimited 產生core檔案,####