原创 Linux下常用函數-字符串函數(二)

相關函數bcopy,memccpy,memcpy,memmove,strcpy,strncpy 表頭文件#include<string.h> 定義函

原创 makefile教程(6)

使用變量 ———— 在Makefile中的定義的變量,就像是C/C++語言中的宏一樣,他代表了一個文本字串,在Makefile中執行的時候其會自

原创 Linux下常用函數-字符串函數(一)

atof(將字符串轉換成浮點型數) 相關函數 atoi,atol,strtod,strtol,strtoul 表頭文件 #include <std

原创 C語言的頭文件是必須的嗎?

N年前學習C語言開始,就被老師教導,要記得包含頭文件。自己也養成了二話不說就#include<stdio.h>的習慣。從來沒有靜下信來想想,C語言必需要有頭文件嗎?頭文件到底起到什麼的作用。     最近一段時間做了一些靜態庫和動態

原创 secureCRT自動斷開的解決方法

方法一: 有時候服務器端的 /etc/profile 或者 ~/.bash_profile 中設置了 TMOUT 選項,或者是 /etc/ssh/sshd_config 文件中設置了客戶端連接時間的設置,很可能一段之間之後,Secur

原创 Socket通信原理和實踐

我們深諳信息交流的價值,那網絡中進程之間如何通信,如我們每天打開瀏覽器瀏覽網頁時,瀏覽器的進程怎麼與web服務器通信的?當你用QQ聊天時,QQ進程怎麼與服務器或你好友所在的QQ進程通信?這些都得靠socket?那什麼是socket?so

原创 double free or corruption的原因(2)

先來段代碼:  01 #include <stdio.h> 02 #include <malloc.h> 03   04 #define DEBUG

原创 linux下靜態鏈接庫生成和使用

生成靜態庫   若當前已有以下.o文件: obj1.o obj2.o   則gcc指令如下:     ~$ ar -rsv libtest.a obj1.o obj2.o   ranlib指令:來對靜態庫

原创 Linux下的段錯誤(Segmentation fault)產生的原因及調試方法(經典)

     簡而言之,產生段錯誤就是訪問了錯誤的內存段,一般是你沒有權限,或者根本就不存在對應的物理內存,尤其常見的是訪問0地址.           一 般來說,段錯誤就是指訪問的內存超出了系統所給這個程

原创 telnet,ssh1和ssh2的區別

當你通過sftp(ssh1)連接linux的時候,假如連接後出現以下提示:Protocol version mismatch. Required protocol version is 1.3 - 1.99. Received,請修改ss

原创 利用securecrt在linux與windows之間傳輸文件

SecureCRT這款SSH客戶端軟件同時具備了終端仿真器和文件傳輸功能。比ftp命令方便多了,而且服務器不用再開FTP服務了。rz,sz是便是Linux/Unix同Windows進行ZModem文件傳輸的命令行工具。   windo

原创 文件鎖機制

文件鎖包括“建議性鎖”和“強制性鎖”。 Linux 系統的文件記錄鎖默認情況下是建議性的!建議性鎖要求每個上鎖的文件的進程都要檢查是否有鎖存在,並且尊重已有的鎖。 考慮數據庫存取例程庫,如果數據庫中所有函數都以一致的方法處理記錄鎖,則稱

原创 *** glibc detected *** double free or corruption (fasttop)

在執行一個程序時,出現如下錯誤:  *** glibc detected *** double free or corruption(fasttop):***   解決方法:   1.該錯誤的意思是:對一個地址先後進行兩次fre

原创 判斷有向圖是否有環 、環的個數以及環中元素

判斷有向圖是否有環有三種方法:拓撲排序、深度遍歷+回溯、深度遍歷 + 判斷後退邊 這裏使用 拓撲排序 和 深度遍歷 + 回溯判斷是不是環。使用 深度遍歷 + 判斷後退邊找出環個數 以及環中元素 1、拓撲排

原创 函數參數的傳遞 動態內存傳遞問題(指針的指針)

程序1: void myMalloc(char *s) //我想在函數中分配內存,再返回 { s=(char *) malloc(100); } void main() { char *p=NULL; myMalloc(p); /