前段時(shí)間,我們介紹了LeetCode上面的一個(gè)經(jīng)典算法題“兩數(shù)之和問題”。這一次,我們把問題做一下擴(kuò)展,嘗試在數(shù)組中找到和為“特定值”的三個(gè)數(shù)。
在這個(gè)互聯(lián)網(wǎng)時(shí)代,知識(shí)就在那里,等著我們?nèi)カ@取。作為一個(gè)收藏從未停止、學(xué)習(xí)從未開始的博主 :(doge,秉承著好東西不能獨(dú)享的態(tài)度,把收藏的學(xué)習(xí)網(wǎng)站整理分享出來。
只有5千行代碼的GuiLite是嵌入式、單片機(jī)中常用的GUI框架;它就是C++編寫,在GitHub有4.8K star,在Gitee有2K star??赡苣阌X得5千行能做什么?
很多想學(xué)單片機(jī)的人問我的第一句話就是怎樣才能學(xué)好單片機(jī)?對(duì)于這個(gè)問題我今天就我自己是如何開始學(xué)單片機(jī),如何開始上手,如何開始熟練這個(gè)過程給大家講講。
滿滿干貨,值得一看!
有很多工程師喜歡自己封裝一些標(biāo)準(zhǔn)庫(kù)已有的函數(shù),其實(shí)自己封裝的函數(shù),并不一定比標(biāo)準(zhǔn)庫(kù)好,有時(shí)候反而代碼更冗余,且有bug。下面就來分享一下C語言常見的一些標(biāo)準(zhǔn)庫(kù)。
在本篇文章中,我收集了很多經(jīng)驗(yàn)和方法。應(yīng)用這些經(jīng)驗(yàn)和方法,可以幫助我們從執(zhí)行速度和內(nèi)存使用等方面來優(yōu)化C語言代碼。
今天分享的是一個(gè)比較生僻的C語言知識(shí)點(diǎn),大家平時(shí)都用過#include"xxx.h"應(yīng)該很少或者幾乎沒有見過.c文件作為頭文件吧,那么今天bug菌就跟大家一起來學(xué)習(xí)一下。
我們鼓勵(lì)在編程時(shí)應(yīng)有清晰的哲學(xué)思維,而不是給予硬性規(guī)則。我并不希望你們能認(rèn)可所有的東西,因?yàn)樗鼈冎皇怯^點(diǎn),觀點(diǎn)會(huì)隨著時(shí)間的變化而變化??墒?,如果不是直到現(xiàn)在把它們寫在紙上,長(zhǎng)久以來這些基于許多經(jīng)驗(yàn)的觀點(diǎn)一直積累在我的頭腦中。因此希望這些觀點(diǎn)能幫助你們,了解如何規(guī)劃一個(gè)程序的細(xì)節(jié)。
預(yù)處理(或稱預(yù)編譯)是指在進(jìn)行編譯的第一遍掃描(詞法掃描和語法分析)之前所作的工作。預(yù)處理指令指示在程序正式編譯前就由編譯器進(jìn)行的操作,可放在程序中任何位置。預(yù)處理是C語言的一個(gè)重要功能,它由預(yù)處理程序負(fù)責(zé)完成。
滿滿干貨,值得一看!
在C語言編程中,typedef 和?#define是最常用語句,可能很多工作過兩三年的工程師都沒有去深究過它們的一些用法和區(qū)別。
C語言有很多特殊的用法,如果這些特殊用法使用得當(dāng),會(huì)是你的代碼變得更加有健壯,更加容易維護(hù)。 比如我們?cè)谑褂肧TM32庫(kù)的斷言(assert),你會(huì)發(fā)現(xiàn)官方提供了包含“__FILE__、__LINE__”的代碼。
關(guān)于C語言的goto語句存在很多爭(zhēng)議,很多書籍都建議“謹(jǐn)慎使用,或者根本不用”。Linux之父Linus在Linux中大量使用goto,也是在啟示著我們可以合理使用goto語句。存在即合理,既然是C語言中的一個(gè)知識(shí)點(diǎn),我們還是有必要學(xué)會(huì)使用。
從學(xué)習(xí)C語言開始就一直寫個(gè)一個(gè)函數(shù),那么你知道它的標(biāo)準(zhǔn)寫法什么什么樣嗎?main函數(shù),又稱主函數(shù),是程序執(zhí)行的起點(diǎn),我們平時(shí)寫的main函數(shù)是什么樣呢?
以前在使用?typedef?與?define?作聲明時(shí),總感覺沒啥區(qū)別,兩個(gè)的使用方法都一樣,但是最近在看《C 陷阱與缺陷》時(shí),才發(fā)現(xiàn)大有不同,因此還是有必要總結(jié)記錄一下。
if...else是所有高級(jí)編程語言都有的必備功能,但現(xiàn)實(shí)中的代碼往往存在著過多的if...else。雖然if...else是必須的,但濫用的話,會(huì)對(duì)代碼的可讀性、可維護(hù)性造成很大傷害,進(jìn)而危害到整個(gè)軟件系統(tǒng)。
學(xué)習(xí)C語言不是一朝一夕的事情,但也不需要花費(fèi)十年時(shí)間才能精通。如何以最小的代價(jià)學(xué)習(xí)并精通C語言是本文的主題。請(qǐng)注意,即使是“最小的代價(jià)”,也絕不是什么捷徑,而是以最短的時(shí)間取得最多的收獲,同時(shí)也意味著你需要經(jīng)歷艱苦的過程。
大家平時(shí)工作,如果有計(jì)算函數(shù)耗時(shí)或者打印當(dāng)前時(shí)間的需求,一定要來看看這篇文章!
學(xué)習(xí)C語言不是一朝一夕的事情,但也不需要花費(fèi)十年時(shí)間才能精通。如何以最小的代價(jià)學(xué)習(xí)并精通C語言是本文的主題。請(qǐng)注意,即使是“最小的代價(jià)”,也絕不是什么捷徑,而是以最短的時(shí)間取得最多的收獲,同時(shí)也意味著你需要經(jīng)歷艱苦的過程。