原创 C語言隱式類型轉換

C語言隱式類型轉換 算術運算式中,低類型轉換爲高類型 賦值表達式中,表達式的值轉換爲左邊變量的類型 函數調用時,實參轉換爲形參的類型 函數返回值,return表達式轉換爲返回值類型 對於上面的隱式類型轉換規則,絕大多數學c語

原创 C語言中++、-- 及編譯器的貪心法

C語言中的++、–即自增、自減是很令人頭疼的。 剛好看到一個問題,一起分析一下。 int i = 3; (++i) + (++i) + (++i); 你覺得這個表達式的值是多少? 如果你覺得是15,那完了,你c語言學的跟我一樣,太爛

原创 C語言中易錯的優先級

對於C語言中的優先級,有一張表,內容很多,正常都不會完全記下來。多數覺得根據使用和嘗試理解,可以絕大部分可以知道的,但有一部分是跟我所理解的有所不同。 先看一段代碼: #include <stdio.h> #include <mall

原创 兩個數的交換(位運算)

昨天在重新學習c語言的時候,看到位運算,然後看到一個有趣的問題,好像以前也看過這個題,就分享一下吧。 兩個數的交換,不借助第三個變量空間。 先放代碼: #include <stdio.h> #define SWAP1(a,b) \

原创 Python核心編程--正則表達式

Python核心編程–正則表達式 正則表達式爲高級的文本模式匹配、抽取、與/或文本形式的搜索和替換功能提供了基礎。正則表達式(regex)是一些由字符和特殊符號組成的字符串,它們描述了模式的重複或者表述多個字符,於是正則表達式能按照某

原创 Linux內核源碼目錄

內核源碼下載地址:www.kernel.org 目錄:以linux-2.6.38爲例(現已經更新到linux-4.15) arch目錄 arch是architecture的縮寫。內核所支持的每種CPU體系,在該目錄下都有對應的子目錄。每

原创 Python3+Flickrapi爬取圖片

在學習爬取圖片的時候,師兄推薦了yahoo的flickr,發現真的是方便好用,就分享一下自己的使用過程。 參考的博客:https://www.cnblogs.com/kkyyhh96/p/5675087.html https://bl

原创 C# Windows應用窗體用戶自定義控件--開關實現

在學習C# Windows應用窗體時,利用用戶自定義控件實現了一個小的開關控件。 參考:https://www.cnblogs.com/feiyangqingyun/archive/2013/06/15/3137597.html 先準備

原创 嵌入式linux(交叉工具鏈)

在linux環境下編程前,我們需要安裝gcc編譯器。 那在進行嵌入式linux開發前,我們首先需安裝交叉工具鏈。 1、下載arm-linux-gcc-xxx.tar.gz 2、解壓工具鏈到某一目錄下: 如:tar xvzf arm

原创 2018浪潮實習生挑戰賽

這是浪潮第一次舉辦的比賽,然後就參加了,初賽是機試,包含性格測試等,然後一些專業選擇題,兩個編程,編程挺簡單的,都ac了。 複賽賽題爲新聞文本分類或聚類,然後進行推薦。 工作量還是很多的,但只給了一個星期來做,我其實不會啦,就開始在g

原创 2018 華爲軟件精英挑戰賽

和室友一起參加了2018 華爲軟件精英挑戰賽,現在來寫寫參賽感受吧。很遺憾,都沒能進複賽,所以只參加了初賽,江山賽區64強,離進複賽只有一點點,當時江山和西北賽區還流傳着,如果在其他賽區就可以進了,都是後話。寫這個純粹記錄研究生生活吧。

原创 堆排序(heap_sort)

堆排序(Heapsort)是指利用堆積樹(堆)這種數據結構所設計的一種排序算法,它是選擇排序的一種。可以利用數組的特點快速定位指定索引的元素。堆分爲大根堆和小根堆,是完全二叉樹。大根堆的要求是每個節點的值都不大於其父節點的值,即A[PAR

原创 進程、線程、程序

進程與線程: 進程 是一個具有一定獨立功能的程序的一次運行活動。 特點: 動態性 併發性 獨立性 異步性 狀態: 進程ID (PID):標識進程的唯一數字 父進程的ID(PPID) 啓動進程的用戶ID(UID) 進程互斥 進程

原创 Linux體系結構、Linux內核架構

Linux體系結構 Linux由用戶空間和內核空間兩部分組成。 現代CPU通常實現了不同的工作模式,以ARM爲例,實現了7種工作模式: 用戶模式(usr)、快速中斷(fiq)、外部中斷(irq)、管理模式(svc)、數據訪問中止(abt

原创 Linux內核模塊

Linux內核的整體結構非常龐大,其包含的組件也非常多,如何使用需要的組件呢: 方法一:把所有的組件都編譯進內核文件,即:zImage或bzImage,但這樣會導致兩個問題:一是生成的內核文件過大;二:是如果要添加或刪除某個組件,需要