原创 ifndef define endif的作用

給你舉個例子,再順便分析一下: 假設你的工程裏面有4個文件,分別是a.cpp,b.h,c.h,d.h。 a.cpp的頭部是: #include "b

原创 pow函數gcc編譯提示 undefined reference to `power' 的解決辦法

今天寫了一個程序,用了pow函數,頭文件中也包含了<math.h>文件,但是在編譯時,gcc -o ippanduan ippanduan.c  一直提示如下錯誤: /tmp/ccARJLRg.o: In function `main

原创 程序員經典面試題之——數組指針與指針數組

1 概述 指針數組:array of pointers,即用於存儲指針的數組,也就是數組元素都是指針數組指針:a pointer to an array,即指向數組的指針 2 用法 int* a[N]     指針數組         

原创 shell三件利器——管道,重定向和backtick

shell重要的三個概念:管道,重定向和backtick 首先說明,這三個東西不是UNIX系統命令,但是他們的在shell編程中真的很重要,要經常用到。 管道 “|” 將一個命令的輸出作爲另一個命令的輸入 例如

原创 滾動顯示升級進度的程序

#include<stdlib.h> #include<stdio.h> void display(int num) { int i = 0; for(i=0;i<num;i++) { printf("="); } for

原创 shell編程之——cat /dev/null作用

在學習shell編程的過程中,都會看到這條命令: cat /dev/null > messages 相信初學者很多都很困惑這是什麼意思,爲什麼要這麼用,現解釋如下,雖然很基礎,但是任何高手都是從最基礎的東西開始慢慢積累的。 言歸正傳 這

原创 程序猿白話之——const的妙用

Use const whenever possible const的一件奇妙的事情是,它允許你指定一個語義約束(即“不可被改動的對象”),而編譯器會強制實施這項約束。它允許你告訴編譯器和其他程序員某值應該保持不變。 const

原创 assert函數淺析

1 基本概念 原型定義在 #include <assert.h> 原型定義: void assert( int expression ); 2 作用 assert的作用是現計算表達式 expression ,如果其值爲假(即爲0

原创 字符串倒置

int main() { char str[]="i come from tian jin."; char temp; int j=strlen(str)-1,i=0; printf("string= %s",str); //先

原创 #if defined #ifdef #ifndef 的區別

1 #if defined 可以實現複雜的預編譯判斷條件 如: #if defined A && B || C && D ...... .................. #endif 2 #ifdef 不能組成複雜的預編譯

原创 ioctl函數

ioctl是設備驅動程序中對設備的I/O通道進行管理的函數。所謂對I/O通道進行管理,就是對設備的一些特性進行控制,例如串口的傳輸波特率、馬達的轉速等等。它的參數個數如下:int ioctl(int fd, int cmd, …);其中

原创 C語言實現的百分比加進度條的顯示程序

項目中需要設計一個遠程設備升級程序,程序優化時想在數字顯示升級進度的同時用類似wget的進度條的形式顯示升級進度,於是寫了一個簡單的數字+進度條顯示升級進度的程序,以下爲程序的核心部分,以達到拋磚引玉的效果。 /* The progr

原创 C語言運算符優先級

C運算符優先級完整口訣 C語言常用運算符的優先級口訣是:“單算關邏條賦逗”;如果加入位運算符,完整口訣是:“單算移關與,異或邏條賦”。■“單”表示單目運算符:邏輯非(!),按位取反(~),自增(++),自減(--),取地址(&),取值(

原创 程序員必備知識——fork和exec函數詳解

        在學習UNIX編程時,必須要學習的一個函數爲fork函數。fork函數也爲面試中必定要問的一個問題,尤其是在BAT的面試中,fork函數相關問題更爲面試筆試必考知識點。究其原因:該函數爲UNIX中派生新進程的唯一方法。不