原创 Ubuntu使用 ls 可以查看到執行文件,但執行卻提示不存在

Ubuntu系統是 64 位的,而可執行程序是 32 位的,需要支持32位的運行庫 ia32-libs,使用下面的命令:   #apt-get install ia32-libs然而,結果提示已經被其它包代替了,那就根據指示來唄:   

原创 c語言函數帶可變參數

當您有時候希望函數帶有可變數量的參數,而不是與定義數量的參數。c語言爲 這種情況提供了一個解決方案,它允許您定義一個函數,能根據具體的需求接收可變數量的參數。語法如下:int func(int ,...) {     ... } int

原创 udp server接收數據併發送數據

需求:    .編寫一個sever接收udp廣播,如果有數據接收,就回應自己mac地址;(也可添加條件發送)    .編寫client用於測試;/*****     server    *********//*--------------

原创 C語言的靜態庫與動態庫

1.什麼是庫       庫是一種可執行代碼的二進制形式,可以直接被操作系統載入內存執行。        通常我們會將一些常用的函數封裝成一個庫,提供接口給其它程序文件調用。這樣一來,省去了重複寫該函數接口。當我們使用該函數時,就可以直接

原创 獲取本地ip,mac地址---Linux C

/*------------------------------------------------------------------ - Filename : getLocalIP.c - CreateTime

原创 C語言:switch多分支語句

switch語句是多分支語句,用來實現如下表示的多分支選擇結構: switch(表達式) { case 常量表達式1: 語句1; break; case 常量表達式1:

原创 Linux C語言生成隨機數

本文主要介紹2個函數:rand()和srand();1.rand()函數    是產生隨機數的一個隨機函數:#include <stdlib.h> int rand(void);return value:     爲一個隨機數值,範圍咋

原创 c語言獲取文件第n行數據

運行環境:ubuntu 64bit實現方法:使用fscanf偏移文件位置,再對文件進行讀取。#include <stdio.h> #include <string.h> #include <stdlib.h> int main(int a

原创 Linux 進程間通信的機制

Linux 下進程間通信的6種機制:    1.管道(Pipe)及有名管道(named pipe):管道可用於具有親緣關係進程間的通信,有名管道克服了管道沒有名字的限制,因此,除具有管道所具有的功能外,它還允許無親緣關係進程間的通信;  

原创 編譯工具的說明

編譯工具包含以下工具:1.xxx-xxx-gcc:C/C++的編譯器;2.xxx-xxx-nm:查看目標文件,可執行文件的符號列表和調試信息;3.xxx-xxx-ld:鏈接器;4.xxx-xxx-readelf:查看elf文件的信息5.x

原创 c++轉爲c程序

目前項目中,涉及到了把c++文件改爲c文件,主要是c++跨平臺存在問題,所以才需要這樣做。特此記錄。簡說:1、C++兼容C語言,但C語言不可能兼容C++,所以,C++代碼直接轉是轉不了C的。2、只能從邏輯上,對C++的許多語法進行代碼上的

原创 C語言學習筆記

1.網絡編程    1.1 TCP知識以及實例        ->    socket通信    1.2 UDP知識以及實例       ->    udp發廣播等待接收和發送數據    1.3 http請求    參考資料:http傳參

原创 C語言實現字符串的反轉輸出

#include <stdio.h> #include <string.h> #include <stdlib.h> void reverse(char *src) { if(src == NULL)

原创 linux C監控程序

需求:    編寫一個監控程序,用於檢測某個服務是否在運行,如果沒有運行,則重新啓動。/************************************************************ * FileName :Mo

原创 gitlab操作命令(Linux)

1.建立遠程連接    1.1 初始化空目錄    在本地創建一個空目錄,cd進去後初始化:        #git init    //就會生成一個.git的隱藏目錄。    1.2 遠程抓項目放在這目錄下(克隆)        #gi