Time of Update: 2018-12-04
自然狀態下,用plot畫的是折線,而不是平滑曲線。有兩種方法可以畫平滑曲線,第一種是擬合的方法,第二種是用spcrv,其實原理應該都一樣就是插值。下面是來源程式,大家可以根據需要自行選擇,更改擬合的參數。clc,clear;a = 1:1:6; %橫座標b = [8.0 9.0 10.0 15.0 35.0 40.0]; %縱座標plot(a, b, 'b'); %自然狀態的畫圖效果hold on;%第一種,畫平滑曲線的方法c = polyfit(a, b, 2);
Time of Update: 2018-12-04
http://blog.csdn.net/yanzi1225627/article/details/8111806 、http://www.eyeandroid.com/thread-9629-1-1.html這裡討論了求第二大的思路。現在研究如果是第i大怎麼辦? 先清晰一下概念,如果有個數組a[6] = 2 60 10 32 84 6; 那麼第1大的數是最大值84, 第2大是60, 第3大是32, 第1小是2, 第二小是6., 第三小是10, 第4小是32. 也即如果讓找第i小,
Time of Update: 2018-12-04
老規矩,先說下問題:串口在接收pc端發來的資料時(100個bytes,每200ms發送一次),偶爾會丟一些資料。某一次的測試記錄如下:第一次丟資料 發送總量60多萬位元組 丟了27個第二次丟資料 發送總量80多萬位元組 (在上一次發送的基礎上又)丟了40個第三次丟資料 發送總量190多萬位元組 (在上一次發送的基礎上又)丟了37個 以上資料要說明的是所丟的資料是一個隨機情況,因為如果我把環境清空(例如斷電重啟)而pc端的發送條件不變,那麼丟資料的情況就不是上面顯示的記錄了。
Time of Update: 2018-12-04
這裡先講一種類似於快速排序的方法。注意題目要求,不要求完全排序,只要求最快解決問題!這個題是我面試NI公司時,對方問我的。原話是從1億個資料裡,找出前一百個最大的。首先看源碼吧:void main(int a[], int start, int end, int N)//從數組a裡,找出前N個最大的。如果是a[100],則start = 0, end = 99.注意這個索 引問題{ int mid = (start + end)/2; int i = start, j =
Time of Update: 2018-12-04
轉載http://blog.sina.com.cn/s/blog_620b71230100f71g.html字元裝置 register_chrdev_region()、alloc_chrdev_region 核心中所有已指派的字元裝置編號都記錄在一個名為 chrdevs 散列表裡。該散列表中的每一個元素是一個 char_device_struct 結構,它的定義如下:static struct char_device_struct {struct char_device_struct
Time of Update: 2018-12-04
http://blog.csdn.net/songjinshi/article/details/65213191.MPlayer 的特殊控制模式 MPlayer 本身是一個命令列的程式,但是他提供了有後台模式(Slave),可以把自己輸出重新導向到一個指定的X Windows視窗中,並且可以通過管道向其發送命令來控制,這樣就為GUI程式提供一個簡單的編程介面.讓其用圖形介面來控制.Gnome下的 gmplayer其實就是通過這個方法來在圖形介面調用MPlayer.
Time of Update: 2018-12-04
void foo(void) { unsigned int a = 6; int b = -20; (a+b > 6) ? puts("> 6") : puts(" <= 6"); } 這個問題測試你是否懂得C語言中的整數自動轉換原則,我發現有些開發人員懂得極少這些東西。不管如何,這無符號整型問題的答案是輸出是 ">6"。原因是當運算式中存在有符號類型和無符號類型時所有的運算元都自動轉換為無符號類型。因此-20變成了一個非常大的正整數,所以該運算式
Time of Update: 2018-12-04
面試過程中,面試官會嚮應聘者發問,而應聘者的回答將成為面試官考慮是否接受他的重要依據。對應聘者而言,瞭解這些問題背後的“陷阱”至關重要。本文對面試中經常出現的一些典型問題進行了整理,並給出相應的回答思路和參考答案。讀者無需過分關注分析的細節,關鍵是要從這些分析中“悟”出面試的規律及回答問題的思維方式,達到“活學活用”。問題一:“請你自我介紹一下” 思路: 1、這是面試的必考題目。 2、介紹內容要與個人簡曆相一致。 3、表述方式上盡量口語化。 4、要切中要害,不談無關、無用的內容。
Time of Update: 2018-12-04
一.準備工作“工欲善其事必先利其器。”1.電腦不一定要配置高,但是雙屏是必須的,越大越好,能一個橫屏一個豎屏更好。一個用來查資料,一個用來寫代碼。總之要顯得資訊量很大,效率很高。2.椅子不一定要舒服,但是一定要可以半躺著。3.大量的便簽,各種的顏色的,用來記錄每天要完成的事務,多多益善。沿著電腦螢幕的邊框,盡量貼滿,顯出有很多事情的樣子。4.工具書,orelly的,機械工業,電子工業什麼的都可以,能英文就英文,不行影印版的也可以,反正越厚越好,而且千萬不要放在書架上,一定要堆在桌上,半開啟狀。二
Time of Update: 2018-12-04
看看下面一段代碼: char *newbuf; long int flen,read_size; FILE *pFile=fopen("./get_time.cpp","r"); fseek(pFile, 0, SEEK_END); flen=ftell(pFile); printf("flen=%d/n",flen); newbuf=(char
Time of Update: 2018-12-04
核心中每個字元裝置都對應一個 cdev結構的變數,下面是它的定義:linux-2.6.22/include/linux/cdev.hstruct cdev {struct kobject kobj; // 每個 cdev都是一個 kobjectstruct module *owner; //指向實現驅動的模組const struct file_operations *ops; // 操縱這個字元裝置檔案的方法struct list_head list;
Time of Update: 2018-12-04
【 聲明:著作權,歡迎轉載,請勿用於商業用途。 聯絡信箱:feixiaoxing @163.com】 原子鎖是多線程編程中的一個特色。然而,在平時的軟體編寫中,原子鎖的使用並不是很多。這其中原因很多,我想主要有兩個方面。第一,關於原子鎖這方面的內容介紹的比較少;第二,人們在編程上面習慣於已有的方案,如果沒有特別的需求,不過貿然修改已存在的代碼。畢竟對很多人來說,不求有功,但求無過。保持當前代碼的穩定性還是很重要的。
Time of Update: 2018-12-04
MFC中獲得系統時間的方法預設分類 2009-06-12 15:41 閱讀7 評論0 字型大小: 大大 中中 小小 1.使用CTime類 CString str; //擷取系統時間 CTime tm; tm=CTime::GetCurrentTime(); str=tm.Format("現在時間是%Y年%m月%d日 %X"); MessageBox(str,NULL,MB_OK);2: 得到系統時間日期(使用GetLocalTime) SYSTEMTIME st;
Time of Update: 2018-12-04
http://blog.chinaunix.net/uid-24227137-id-3408713.html有時調試核心模組,列印資訊太多了,可以通過修改/proc/sys/kernel/printk檔案內容來控制。預設設定是6 4 1 7 # cat
Time of Update: 2018-12-04
系統位元組序檢測的兩種方法下面代碼示範了兩種檢測系統位元組序的方法。第一種方法,使用強制類型轉換的方式。C 語言在把佔用2個位元組的 short 變數強制轉換為 char 之後,會把 short 變數的首地址賦給 char 變數,可以根據 char 變數的值判斷系統位元組序是 大端 還是 小端。第二種方法,利用 等位型別 的特性。等位型別 共用同一段記憶體,首地址是相同的。測試環境: ubuntu 10.04 amd 64./*******en/*******************
Time of Update: 2018-12-04
【 聲明:著作權,歡迎轉載,請勿用於商業用途。 聯絡信箱:feixiaoxing @163.com】 相信有過多線程編程經驗的朋友,都吃過死結的苦。除非你不使用多線程,否則死結的可能性會一直存在。為什麼會出現死結呢?我想原因主要有下面幾個方面: (1)個人使用鎖的經驗差異 (2)模組使用鎖的差異 (3)版本之間的差異 (4)分支之間的差異 (5)修改代碼和重構代碼帶來的差異
Time of Update: 2018-12-04
http://blog.csdn.net/zhanglianpin我在學習嵌入式作業系統UCOS時,有很大的迷茫之處,在於我不知道我用的工具到底幫我幹了些神馬工作。下面就說一下我當時的疑問:1:編譯器和連結器幹了些神馬?我現在也還沒能力知道它是怎麼乾的這些工作。以後慢慢來唄。但當時我連它幹了神馬都不清楚。2:它輸入的是來源程式,那他輸出的是什嗎?有格式嗎?是什麼樣子那?重重疑問。 ADS編譯器的目的是怎麼把進階語言編程能在ARM平台上直接啟動並執行東東。而我們的目的是看看他幹了些神馬,讓我們瞭解
Time of Update: 2018-12-04
【 聲明:著作權,歡迎轉載,請勿用於商業用途。 聯絡信箱:feixiaoxing @163.com】 在互斥資料訪問中有一種多讀少寫的情況。正對這麼一種情形,我們也提出了讀寫鎖的方案。但是呢,這個鎖有些缺陷。什麼缺陷呢?那就是,這個寫鎖需要在所有的讀鎖完成之後才能寫。否則的話,寫鎖需要這麼一直等下去。 那麼,有沒有什麼辦法能使得寫操作快速一點進行呢?那就是順序鎖。typedef struct _SEQUENCE_LOCK{ unsigned int sequence;
Time of Update: 2018-12-04
【 聲明:著作權,歡迎轉載,請勿用於商業用途。 聯絡信箱:feixiaoxing @163.com】 前面,為了使得寫操作快速進行,我們定義了順序鎖。但是順序鎖有個缺點,那就是處理的資料不能是指標,否則可能會導致exception。那麼有沒有辦法使得處理的資料包括指標呢?當然要是這個鏈表沒有鎖,那就更好了。 針對這種無鎖鏈表,我們可以初步分析一下,應該怎麼設計呢? (1)讀操作沒有鎖,那麼怎麼判斷讀操作進行中呢,只能靠標誌位了;
Time of Update: 2018-12-04
【 聲明:著作權,歡迎轉載,請勿用於商業用途。 聯絡信箱:feixiaoxing @163.com】 多核編程並不是最近才興起的新鮮事物。早在intel發布雙核cpu之前,多核編程已經在業記憶體在了,只不過那時候是多處理器編程而已。為了實現多核編程,人們開發實現了幾種多核編程的標準。open-mp就是其中的一種。對於open-mp還不太熟悉的朋友,可以參照維基百科的相關解釋。