原创 輸入一個字符串,刪除其中所有的數字,所有大寫字母改成小寫,其他不變,並輸出

#include <stdio.h> int main() { int i, j; int k; char data[20] = {'\0'}; gets(data); for(i=

原创 判斷輸入的字符串是不是一個有效的IP地址

#include "IPAddressValid.h" #include <string.h> #include <stdlib.h> #include <stdio.h> int fort_fun(char *str, int

原创 模擬c中的strstr函數

#include <stdio.h> #include <string.h> char* strstr_func(char *p, char *s);//統計字符串連續出現的次數 int main() { char *

原创 輸入一串字符串,其中有普通的字符與括號組成(包括‘(’、‘)’、‘[’,']'),要求驗證括號是否匹配,如果匹配則輸出0、否則輸出1.

#include <stdio.h> int push(char *pstr, char *dstr ); int main() { char *str = "]d)]fa(sdf)df[dfds(dfd)] ()*(

原创 求一個字符串中出現次數最多的子串

#include <stdio.h> #include <string.h> void func(char *pstr, char *sstr); int count_func(char *p, char *s); int m

原创 ZigBee基礎知識

1、zigbee技術特點 ZigBee是一種無線連接,可工作在2.4GHz(全球流行)、868MHz(歐洲)、915MHz(美國流行)三個頻段上,分別具有最高250kbp/s、20kb/s和40kb/s的傳輸速率,傳輸距離在10-

原创 c語言中位制

今天看書看到了位制的概念,對這個做出一點總結。 位制就是爲了減小存儲大小,把一個char, unsigned int, int的存儲空間進行拆分後,對每個進行操作。 給出一段代碼: #include <stdio.h> #in

原创 C函數與彙編函數之間參數及返回值傳遞方法

AAPCS對ARM結構的一些標準做了定義,在這裏我們只重點介紹函數調用部分,如圖8所示,AAPCS爲ARM的R0~R15寄存器做了定義,明確了它們在函數中的職責: 圖 8 AAPCS關於ARM寄存器的定義 一、函數調用時的規

原创 uC/OS-II中OSUnMapTbl[]的原理

問題描述: ucos任務隊列中優先級獲取 問題解決: uCOS-II是一個多任務的操作系統,每個任務都是一個應用程序,它有自己的寄存器和堆棧空間,即任務控制塊TCB(task control block),用來保存任務的狀態,具

原创 STM32啓動文件2.02過程詳解

1、當前的嵌入式應用程序開發過程裏,並且C語言成爲了絕大部分場合的最佳選擇。如此一來main函數似乎成爲了理所當然的起點——因爲C程序往往從main函數開始執行。但一個經常會被忽略的問題是:微控制器(單片機)上電後,是如何尋找到並

原创 把i come from tianjin.到轉成tianjin. from come i

#include <stdio.h> #include <string.h> void swap(char *str); int main() { char *data0 = "i come from tianjin.

原创 ucos-ii中os_cpu_a.asm函數解釋

1、 對進入臨界區和跳出臨界區的函數理解 #define OS_ENTER_CRITICAL() {cpu_sr = OS_CPU_SRSave();} #define OS_EXIT_CRITICAL() {OS_C

原创 整理

1、atoi函數:將字符串轉化爲int類型變量 atol函數:將字符串轉化爲long類型變量 atoll函數:將字符串轉化爲long long類型變量 atof函數:將字符串轉化爲double類型變量 這些函數的轉化過程,

原创 彙編文件 .s 和 .S 區別

.s 彙編語言源程序;  操作: 彙編 .S彙編語言源程序;  操作: 預處理 + 彙編 1.小寫的 s文件,在後期階段不會再進行預處理操作了,所以我們不能在其內寫上預處理語句。     一般是 .c 文件經過彙編器處理後的輸出。 如