Time of Update: 2018-12-03
標題有點長,但還是能看明白的吧。最近做一個S60項目,需要自己設計清單控制項,捲軸和分頁都要從頭開始類比,比較頭疼。在做分頁時不免需要用到ceil()函數,而Symbian的Class Math沒有提供ceil()函數,於是只能藉助標準C。藉此機會說明一下如何在S60項目中使用標準C的庫函數。 1.SDK文檔中查知ceil:Location: libc/math.hceil()IMPORT_C double ceil(double); 2.開啟工程的mmp檔案,在SYSTEMINCLUDE
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
從概念上講。指標從本質上講就是存放變數地址的一個變數,在邏輯上是獨立的,它可以被改變,包括其所指向的地址的改變和其指向的地址中所存放的資料的改變。而引用是一個別名,它在邏輯上不是獨立的,它的存在具有依附性,所以引用必須在一開始就被初始化,而且其引用的對象在其整個生命週期中是不能被改變的(自始至終只能依附於同一個變數)。在C++中,指標和引用經常用於函數的參數傳遞,然而,指標傳遞參數和引用傳遞參數是有本質上的不同的:指標傳遞參數本質上是值傳遞的方式,它所傳遞的是一個地址值。值傳遞過程中,被調函數的
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
from:http://www.linuxidc.com/Linux/2011-08/39987.htm一、互斥鎖互斥量從本質上說就是一把鎖, 提供對共用資源的保護訪問。 1. 初始化: 在Linux下, 線程的互斥量資料類型是pthread_mutex_t. 在使用前, 要對它進行初始化: 對於靜態分配的互斥量, 可以把它設定為PTHREAD_MUTEX_INITIALIZER, 或者調用pthread_mutex_init. 對於動態分配的互斥量, 在申請記憶體(malloc)之後,
Time of Update: 2018-12-03
int c[3][3]={1,2,3,4,5,6,7,8,9};for(int i=0;i<3;i++)for(int j=0;j<3;j++)NSLog(@"%d ,%d",&c[i][j],c[i][j]); printf("%ld\n",c); printf("%ld\n",(c+1)); printf("%ld\n",(c+1)[1]); printf("%ld\n",(c+1)[3]); printf(
Time of Update: 2018-12-03
1. 首先聲明, 代碼主要是從Linux udev程式中提取出來的. 2. 支援的設定檔格式如下: #commentvar_name1 = "XXX" #commentvar_name2 = "QQQ" #comment 3. config_file.h #include <stdint.h>#include <stdio.h>#include <syslog.h>#define MAX_
Time of Update: 2018-12-03
對於普通類型的對象來說,它們之間的複製是很簡單的,例如:int a=88;int b=a; 而類對象與普通對象不同,類對象內部結構一般較為複雜,存在各種成員變數。下面看一個類對象拷貝的簡單例子。 #include <iostream>using namespace std;class CExample {private: int a;public: CExample(int b) { a=b;} void Show () {
Time of Update: 2018-12-03
**************************************************************
Time of Update: 2018-12-03
**************************************************************************************原文連結:http://main.linuxfocus.org/ChineseGB/March2005/article371.shtml************************************************************************************************
Time of Update: 2018-12-03
********************************************************* 原文:http://www.cplusplus.com/doc/tutorial/ *********************************************************其他資料類型被定義的資料類型(typedef)C++允許我們基於現有的資料類型來定義我們自己的類型。我們可以通過使用關鍵字typedef來實現,它的形式為:typedef
Time of Update: 2018-12-03
剛剛看到c Traps and Pitfalls 看到了 兩個定義和聲明 覺得有必要理解下 只要大概瞭解下,只是文字遊戲而已舉個例子 大家 只要 知道 函式宣告和函數的定義有區別,其他的就一一了斷了 下面作詳細的介紹: 變數的聲明有兩種情況: (1) 一種是需要建立儲存空間的(定義、聲明)。例如:int a在聲明的時候就已經建立了儲存空間。 (2) 另一種是不需要建立儲存空間的(聲明)。例如:extern int
Time of Update: 2018-12-03
#include <iostream>#include <malloc.h>#include <stdio.h>using namespace std;struct stu{ int *a; int *b;};int main(){ //struct stu *s=new stu[10]; //struct stu s=new stu; stu s = (stu*)malloc(sizeof(stu)+2); /
Time of Update: 2018-12-03
#include <stdio.h>#include <stdlib.h>int main(){ FILE *fp; fp=fopen("E:\\Recent Files\\test.txt","r"); //若這裡是w模式,那麼 下面的代碼沒有進行寫操作,源檔案就會變成空的了 //你輸出也就沒有用了,所以這裡我們要注意 if (!fp) { printf ("can't find the files\n.");
Time of Update: 2018-12-03
給出n行m列的矩陣,“@”代表有石油,“*”代表沒有,如果含有石油的小塊相鄰,那麼屬於同一塊油田。相鄰包括水平、垂直和斜對角,求油田的數量。BFS代碼#include<stdio.h>int m, n;char grid[105][105];int x[8] = {-1, -1, -1, 0, 1, 1, 1, 0};int y[8] = {-1, 0, 1, 1, 1, 0, -1, -1};struct node{ int x, y; }Q[10005];void
Time of Update: 2018-12-03
貪心思路:cor[i]數組儲存覆蓋到該島的雷達能放置的區間,然後按照左端點從小到大對數組排序。只要雷達放置在某島的cor[i]儲存的區間內,這個島就能被這個雷達覆蓋。排序後,相鄰的兩個區間只有三種情況。1.第二個區間完全在第一個區間的後面。2.第一個區間的後邊一部分與第二個區間的前邊一部分重合。3.第二個區間包含在第一個區間內。先把第一個雷達放在第一個區間的右端點。1.如果第二個區間與第一個區間屬於相鄰區間的第一種情況,那麼第一個區間的右端點顯然不在第二個區間內,需要在第二個區間的右端點放一個新