Time of Update: 2018-12-03
最近在研究Android 2.3.3原始碼的C/C++層,需要對代碼進行一些調試,但是奇怪的是,直接添加LOGD("XXXXXXXX");,使用logcat卻看不到任何輸出,換成LOGI、LOGV、LOGW、LOGE也沒有效果。於是在網上尋找解決方案,經過幾次實驗,終於找到了,現在貼到下面備忘:第一步:在對應的mk檔案中加入:LOCAL_LDLIBS := -llog第二步:在要使用LOG的cpp檔案中加入:#include <android/log.h>#define LOGD(.
Time of Update: 2018-12-03
在iphone程式中會大量看到@selector這樣的用法。<<iphone開發基礎>花了很大一個篇幅來解析這個文法,但是不知是翻譯問題,還是解釋過細,不大看得懂,很是不給力.直到程式用這個文法,並且仔細看了一些解析文章。才明白這一文法。 簡而言之,你可以理解
Time of Update: 2018-12-03
1.首先網上下個mingw32 windows下gcc的3.4版本 把它解壓到一個盤(如C,或者d,或者e盤),2 把你當前解壓的gcc/bin目錄增加到的系統path目錄下,假如你解壓到d盤,就把d:/gcc/bin目錄增加到你系統的path環裡3 如何編譯c,c++原始碼,假如你寫了一個hello.c檔案,如: #include<stdio.h> int main() //注意gcc環境下,main()函數必須返回一個int,不能返回void{
Time of Update: 2018-12-03
之前遇到一個問題:客戶要求他們的程式在PPC上安裝後程式名是中文的,但是當CAB打包時如果INF檔案包含有UNICODE就會有如下錯誤:Error: The INF file contains Unicode characters that could not be converted correctly to
Time of Update: 2018-12-03
#include<stdio.h>char* strcpy(char* dest,const char* src); //字串拷貝char* strcat(char* dest,const char* src); //字串串連,返回dest字串char* strncat(char* dest, const char* src, int size);//把src前n個字串串連到dest,返回dest字串int strcmp(const char* src1,const
Time of Update: 2018-12-03
摘自『高品質c++編程』指標與引用,在More Effective C++ 的條款一有詳細講述,我給你轉過來 條款一:指標與引用的區別 指標與引用看上去完全不同(指標用操作符’*’和’->’,引用使用操作符’.’),但是它們似乎有相同的功能。指標與引用都是讓你間接引用其他對象。你如何決定在什麼時候使用指標,在什麼時候使用引用呢?
Time of Update: 2018-12-03
題目地址:http://poj.org/problem?id=2115#include<iostream>#include<cstdio>using namespace std;typedef long long inta;void extend_gcd(inta a,inta b,inta &x,inta &y,inta &gcd){ if(b==0) { x=1; y=0; gcd=a; }
Time of Update: 2018-12-03
結合Carbide.c++ Express配置命令列編譯環境Subject: Setting up command line build environment with Carbide.c++ Express結合Carbide.c++ Express配置命令列編譯環境TSS000617支援平台:S60 3rd Edition概敘:Carbide.c++
Time of Update: 2018-12-03
題目地址:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=1394注意要點: 1根本不需要真正構建出樹的結構 否則反而超記憶體由於最後的結果等於 w【i】*l【i】求和 換成加法 w【i】應該加層數那麼多次,而這樣的構建方式使根結點的權值恰好等於所有葉子節點權值之和(包括中間狀態)所以在每次建立新結點時,把新結點的權值加到最後的結果中去,那麼每個權值被加的次數等於它出於多少顆樹中,恰好等於它的高度2即使是weight
Time of Update: 2018-12-03
當我們的軟體大到一定程度的時候,就要考慮將軟體劃分為多個模組,從而降低軟體的複雜度以及複用部分資源。模組的主要表現形式有很多種,其中最常用的就是lib和dll檔案。下面簡單講一下lib和dll的產生和使用方法。
Time of Update: 2018-12-03
//input 8 12.61s consumed //input 8 11.72s consumed remove '-' in the printed array #include <stdio.h> #include <string.h> #include <stdlib.h> #define LENGTH 27 int n=0; void permute(int[],int,int); void swapint(int
Time of Update: 2018-12-03
C++代碼(4)排列與組合#include <assert.h>#include <iostream>#include <algorithm>using namespace std;template<typename T>void Perm(T* pT, int n, int m){ if (n == m) { for (int i=0; i<m; i++) cout <<
Time of Update: 2018-12-03
#include <assert.h> #include <iostream> #include <algorithm> #include <string> using namespace std; #define N 3const char* m_Data[N] = {"aaa", "bbb", "ccc"}; void OutPut(int i, int j){string temp(""); string
Time of Update: 2018-12-03
#include<stdio.h>main(int argc, char *argv[], char *env[]){ int i; printf(" The value of argc is %d/n/n", argc); printf(" This are %d command-line arguments passed to main/n/n", argc); for(i = 0; i < argc; i++) {
Time of Update: 2018-12-03
從概念上講。指標從本質上講就是存放變數地址的一個變數,在邏輯上是獨立的,它可以被改變,包括其所指向的地址的改變和其指向的地址中所存放的資料的改變。而引用是一個別名,它在邏輯上不是獨立的,它的存在具有依附性,所以引用必須在一開始就被初始化,而且其引用的對象在其整個生命週期中是不能被改變的(自始至終只能依附於同一個變數)。在C++中,指標和引用經常用於函數的參數傳遞,然而,指標傳遞參數和引用傳遞參數是有本質上的不同的:指標傳遞參數本質上是值傳遞的方式,它所傳遞的是一個地址值。值傳遞過程中,被調函數的
Time of Update: 2018-12-03
XML的學習XML是一種標記語言,它沒有任何行為,只是對資料進行結構化的描述。XML的設計宗旨是傳輸資料(xml是資料獨立開來,並且不同平台之間傳輸數 據也不會有問題,因為都是XML標準),而不像html那樣是為了呈現資料XML的標籤需要自行定義,它沒有預定義標籤(不像html那樣有許多定義好的標籤body h
Time of Update: 2018-12-03
自己定義了一個結構,寫了一個dll返回這個結構的資料,結果一直出現錯誤,後來把VS2005的所有異常開啟,報出了DATA misalignment的錯誤,查了查對我也沒什麼協助。只是猜想記憶體對齊的問題。 但我的結構的定義是3個指標,那就是3個機器字,這樣來看是沒問題的,不存在記憶體為對齊。 後來寫程式實驗,看著每一條語句修改的記憶體資料的地區,發現win32中的COM中,BSTR使用了SysStringByteLen和SysStringLen來計算字串長度,而我也是通過這個來malloc資料,
Time of Update: 2018-12-03
前段時間寫了一個刪除c/c++來源程式中的注釋的程式,結構比較複雜,現在考慮用有限狀態機器來解決。代碼沒有考慮字串、嵌套下的情況,若要考慮,還需進行少許修改。代碼如下 #include <stdio.h>enum {CODE,COMMENT1,//“/**/”型注釋COMMENT2,//“//”型注釋}g_state=CODE;enum Input{CH, //其他字元CH1, // "/*" or "*/"CH2,// "//"RT,// "/n"};Input
Time of Update: 2018-12-03
題目:編寫一個程式,用於處理c/c++來源程式,將來源程式中的注釋部分去掉輸入:c/c++檔案名稱輸出:處理後的程式源檔案程式虛擬碼如下:c1,c2:chartag:inta:讀入一個字元存入c1if tag==0 //讀入字元不是注釋 if c1=='/' //可能是注釋標記 讀入一個字元存入c2 if c2=='*' //為/**/注釋的開頭 tag = 2 else if c2=='/' //為//注釋的開頭 tag = 1 else
Time of Update: 2018-12-03
CC攻擊原理及防範新思路作者:冰盾防火牆 網站:www.bingdun.com 1. CC基本原理 CC攻擊利用Proxy 伺服器向網站發送大量需要較長計算時間的URL請求,如資料庫查詢等,導致伺服器進行大量計算而很快達到自身的處理能力而形成DOS,而攻擊者一旦發送請求給代理後就主動中斷連線,因為代理並不因為用戶端這邊串連的斷開就不去串連目標伺服器,因此攻擊機的資源消耗相對很小,而從目標伺服器看來,來自代理的請求都是合法的。 2.