Time of Update: 2017-02-27
作者:達通興電腦科技公司(www.study01job.com)
Time of Update: 2017-02-27
最近有朋友想要採集優酷的視頻標題和縮圖 (哈哈, 並非商業目的). 找到我幫忙, 考慮到有我 剛剛發布的SpiderStudio, 我毫不猶豫的答應了.首先在網頁上視頻的基本結構為:div.v- div.v-meta-title //標題- div.v-thumb / img //縮圖對應的JQuery運算式為:$("div.v").find("div.v-meta-title");$("div.v").find ("div.
Time of Update: 2017-02-27
刪除休眠檔案hiberfil.sys該檔案在C盤根目錄為隱藏的系統檔案,隱藏的這個hiberfil.sys檔案大小正好和自己的實體記憶體是一致的,當你讓電腦進入休眠狀態時,Windows7在關閉系統前將所有的記憶體內容寫入hiberfil.sys檔案。而後,當你重新開啟電腦,作業系統使用hiberfil.sys把所有資訊放回記憶體,電腦恢複到關閉前的狀態。可Windows7並不會將這個檔案刪除,而是一直放在硬碟上,會白白地佔用一部分磁碟空間,時間長了你的硬碟可就吃不消了。Windows7下面安全
Time of Update: 2017-02-27
Linux下C++編程和在Windows下的沒有什麼兩樣,它同樣需要編譯、連結、調度、運行等步驟,只不過執行這些步驟在兩種作業系統下所做的不是同樣的事情。在Windows下有TC, BC, VC等編譯器,它們極大地方便了程式的編輯編譯等,在Windows下你只需要看明白菜單就可以了。而在Linux下是Gcc, G++, Gdb等工具,剛開始時你可能甚至不知道如何下手去偵錯工具,你也可能甚至不知道程式在哪裡編輯。不過這些都不是問題,慢慢來我們都能行!下面我們以一個最簡單也是最經典的Hello
Time of Update: 2017-02-27
題目:809*??=800*??+9*??+1 其中??代表的兩位元,8*??的結果為兩位元,9*??的結果為3位元。求??代表的兩位元,及809*??後的結果。1.程式分析:2.程式原始碼:output(long b,long i){ printf("\n%ld/%ld=809*%ld+%ld",b,i,i,b%i);}main(){ long int a,b,i; a=809; for(i=10;i<100;i++) { b=i*a+1; if(b>=10
Time of Update: 2017-02-27
【程式71】題目:編寫input()和output()函數輸入,輸出5個學生的資料記錄。1.程式分析:2.程式原始碼:#define N 5struct student{ char num[6]; char name[8]; int score[4];} stu[N];input(stu)struct student stu[];{ int i,j; for(i=0;i<N;i++) { printf("\n please input %d of %d\n",i+1,
Time of Update: 2017-02-27
格式字元 格式字元意義c 輸出單個字元d 以十進位形式輸出帶正負號的整數(正數不輸出符號)e 以指數形式輸出單、雙精確度實數E 以指數形式輸出單、雙精確度實數f 以小數形式輸出單、雙精確度實數g 以%f%e中較短的輸出寬度輸出單、雙精確度實數,%e格式在指數小於-4或者大 於等於精度時使用G 以%f%e中較短的輸出寬度輸出單、雙精確度實數,%e格式在指數小於-4或者大於等於精度時使用i
Time of Update: 2017-02-27
原文出處:Strsafe.h: Safer String Handling in C:http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnsecure/html/strsafe.asp在微軟公司舉行的Microsoft Windows Security Push 活動期間,一批測試者、程式管理經理和普通程式員共同決定要為 C 語言量身定製一套具有較高安全性的字串處理函數,並且希望這些函數能被 Windows
Time of Update: 2017-02-27
前段時間,準備設計一個關於出錯資訊的表,每一個錯誤有一個唯一的ErrID,和對應的錯誤資訊以及其他輔助資訊。在C語言中,很自然的實現如下:enum { ERR_ID_1, ERR_ID_2, ERR_ID_3, ERR_ID_4} ErrID;const char* errmsg[] = { "This is Error 1 msg", /*ERR_ID_1*/ "This is Error 2 msg", /*ERR_
Time of Update: 2017-02-27
1、選擇合適的演算法和資料結構應該熟悉演算法語言,知道各種演算法的優缺點,具體資料請參見相應的參考資料,有很多電腦書籍上都有介紹。將比較慢的順序尋找法用較快的二分尋找或亂序尋找法代替,插入排序或冒泡排序法用快速排序、合并排序或根排序代替,都可以大大提高程式執行的效率。.選擇一種合適的資料結構也很重要,比如你在一堆隨機存放的數中使用了大量的插入和刪除指令,那使用鏈表要快得多。數組與指標語句具有十分緊密的關係,一般來說,指標比較靈活簡潔,而數組則比較直觀,容易理解。對於大部分的編譯器,使用指標比使用
Time of Update: 2017-02-27
訊息佇列是一系列連續排列的訊息,儲存在核心中,通過訊息佇列的引用標識符來訪問。訊息佇列與管道很相似,但使用訊息佇列的好處是對每個訊息指定了特定訊息類型,接收訊息的進程可以請求接收下一條訊息,也可以請求接收下一條特定類型的訊息。#include <sys/types.h> #include <sys/ipc.h> #include <sys/msg.h> #include <stdio.h> #include <
Time of Update: 2017-02-27
用戶端:#include <stdio.h> #include <sys/socket.h> #include <unistd.h> #include <sys/types.h> #include <netinet/in.h> #include <stdlib.h> #define SERVER_PORT 20000 // define the defualt
Time of Update: 2017-02-27
檔案是有名字的一組相關資訊的集合,在Linux 系統中,檔案的準確定義是不包含有任何其他結構的字元流。通俗地說,就是檔案中的字元與字元之間除了同屬於一個檔案之外,不存在任何其他的關係。檔案中字元的關係,是由使用檔案的應用程式來建立和解釋的。每一個檔案都具有特定的屬性。Linux 系統的檔案屬性比較複雜,主要包括檔案類型和檔案許可權兩個方面。1.檔案類型Linux下的檔案可以分為5
Time of Update: 2017-02-27
訊號作為非同步進程的通訊方式,在實際應用中是方便而實用的。但是,也應該注意到在使用訊號時的潛在危險。在此簡單介紹幾種可能引發錯誤的具體情況,希望在實際進行訊號處理時特別注意。當註冊了一個訊號處理函數時,可能會對某些系統調用進行修改。通常來講,它們本來應是不受訊號的影響,但由於註冊了一個訊號處理函數,系統可能會認為在一個訊號到來時需要中斷原系統調用。當這種情況發生時,原系統調用被終止,返回調用失敗值,同時errno將被設定為EINTR。當然有一些時候,確實希望系統如此處理,但在另一些情況下,並不希
Time of Update: 2017-02-27
int sigsuspend(const sigset_t *sigmask);此函數用於進程的掛起,sigmask指向一個訊號集。當此函數被調用時,sigmask所指向的訊號集中的訊號將賦值給訊號掩碼。之後進程掛起。直到進程捕捉到訊號,並調用處理函數返回時,函數sigsuspend返回。訊號掩碼恢複為訊號調用前的值,同時將errno設為EINTR。進程結束訊號可將其立即停止。#include <stdio.h> #include <signal.h>
Time of Update: 2017-02-27
要對一個訊號進行處理,就需要給出此訊號發生時系統所調用的處理函數。可以對一個特定的訊號(除去SIGKILL和SIGSTOP訊號)註冊相應的處理函數。註冊某個訊號的處理函數後,當進程接收到此訊號時,無論進程處於何種狀態,就會停下當前的任務去執行此訊號的處理函數。1、註冊訊號函數。#include<signal.h> void(*signal(int signumber,void
Time of Update: 2017-02-27
訊號是用於一步事件的。當一個訊號發生時,程式會按照已經設定好的程式來執行相應的操作。進程對訊號處理的方法一般有兩種:1、捕捉訊號:當一個訊號發送個進程時,該進程會調用此訊號註冊的訊號處理函數,來完成相應的操作。對應於每個訊號系統一般會有相應的預設處理函數(一般為終止進程)。所以可以設定訊號為預設的處理函數。2、忽略訊號。當訊號發送時,進程忽略訊號。註:有兩個訊號是無法捕捉和忽略的SIGKILL和SIGSTOP。它們是提供給管理員,可以在任何時刻終止某個進程而設定的。對訊號處理的要求:在使用者編程
Time of Update: 2017-02-27
華為C語言面試題:程式的局部變數存在於(堆棧)中,全域變數存 在於(靜態區 )中,動態申請資料存在於( 堆)中。一點小總結:1、關於堆棧,印象最深的就是在做uboot移植,在你準備進入c代碼時 ,你必須給c代碼一個良好的運行環境,其中重要的一項就是設定堆棧。2、關於靜態記憶體配置和動態記憶體分配的區別及過程1) 靜態記憶體 分配是在編譯時間完成的,不需要佔用CPU資源;動態分配記憶體是在運行時完成的 ,動態記憶體的分配與釋放需要佔用CPU資源;2) 靜態記憶體配置是在棧上
Time of Update: 2017-02-27
華為C語言面試題如何引用一個已經定義過的全域變數?答:extern可以用引用標頭檔的方式,也可以用extern關鍵字,如果用引用標頭檔方式來引用某個在標頭檔中聲明的全域變理,假定你將那個變數寫錯了,那麼在編譯期間會報錯,如果你用extern方式引用時,假定你犯了同樣的錯誤,那麼在編譯期間不會報錯,而在串連期間報錯 3.
Time of Update: 2017-02-27
getch()所在標頭檔:conio.h函數用途:從控制台讀取一個字元函數原型:int getch(void)傳回值:讀取的字元例如:char ch;或int ch;getch();或ch=getch();用getch();會等待你按下任意鍵,再繼續執行下面的語句;用ch=getch();會等待你按下任意鍵之後,把該鍵字元所對應的ASCII碼賦給ch,再執行下面的語句。易錯點:1.所在標頭檔是conio.h。而不是stdio.h。2.在使用之前要調用initscr(),結束時要調用endwin(