當前位置:首頁 » 操作系統 » 基於linuxc

基於linuxc

發布時間: 2022-06-18 18:44:17

『壹』 要做基於linux的C編程一定要linux系統下嗎

首先恭喜樓主:這是不可能滴

第二:這是為什麼呢???

LINUX下面執行文件是看文件屬性chmod+x為執行,WIN下邊是按照.exe或者.com這兩種格式執行
如果你在WIN下邊編譯後是EXE文件,所以不能在LINUX下邊執行了

『貳』 基於linux的C程序代碼能在windows xp的環境下運行嗎

只要源代碼中不包含本地代碼就可以用相應平台的編譯器進行編譯運行。
例如:
在Linux下用gcc編譯過可以運行的源代碼,可以用Windows版的gcc來編譯運行。但是gcc編譯通過可以運行的代碼,用turbo
c的編譯器可能編譯不了而出錯。
同時,如果源代碼中包含本地代碼(如GUI相關的代碼)即使Linux版的gcc可以編譯通過,從而用Windows版的gcc來編譯,同樣有可能編譯不了而出錯。
所以綜上所述,Linux下同樣的c語言源代碼可以在Windows下編譯通過的條件是:
1.使用同一組織或公司開發的編譯器,但必須是不同平台的版本。如:Lin版GCC和Win版GCC,而不能是GCC(不論哪個版本)和turbo
c。
2.不能包含本地代碼。

『叄』 為什麼嵌入式要用linuxC,和普通的C語言有什麼區別呢!

C語言本身遵循ANSI
C89或者C99標准
並不區分linux或者windows
樓上說的mfc也和c語言沒什麼關系
是windows基於c++開發的庫
C語言本身語法很簡單比如你知道一些運算符就可以入門
但是如果要深入在linux環境下做c語言編程
可能需要了解linux操作系統的機制,可以看linux高級編程之類的書
如果需要做嵌入式開發,更需要了解硬體以及linux內核的一些機制,
編程需要靠經驗和自己的思維慢慢積累,好學不好學,有人帶最好,沒人帶就一步步入門吧
c語言基礎知識
linux用戶態編程
linux內核編程
一步步來

『肆』 路過可以看:會基於Linux下的C編程的,可以寫以下編程嗎

其實三道題目都很簡單
第一道題根本就不需要依賴基於linux平台的編程
完全可以使用標准c語言的部分搞定,完全是c語言基礎課程中的練習題
第二道題其實也非常簡單,管道可以用pipe這個函數,不會可以man下,看不懂英文可以網路谷何找下
這種簡單的東西甚至只要你用心會有現成的代碼讓你簡化
第三道題涉及到socket編程,伺服器端先創建套接字描述符
然後bind綁定埠
之後listen監聽
再使用accept阻塞等待客戶端發來連接
客戶端就簡單多了
首先同樣是使用socket創建一個套接字描述符
之後就使用connect向指定的ip以及埠發起連接
你的程序伺服器要做的事情是收到連接後判斷客戶端發來的數據
其實就是判斷一個路徑然後到該路徑里去搜索字元串末尾給出的文件名(當然你的這個路徑是固定的了)
如果有這個文件那麼就將該文件的內容通過二進制形式復制給客戶端(其實就是文件的操作)
如果沒有這個文件的話就返回一個錯誤信
然後斷開連接
客戶端是先發起連接,然後發送指定文件名,就是一個字元串然後等待伺服器端給出響應
如果伺服器端開始發送文件的話就在你的本地某個分區路徑里創建一個文件,並把從伺服器端讀來的二進制內容寫到該文件里
這樣寫完後伺服器斷開連接,客戶端退出,文件下載完畢
其實你可以把你看成是一個簡單FTP伺服器
網上都有現在的代碼.自己努力看了後稍加修改就可完成作業了
作業一定要自己做,我這里不給你寫代碼了,三道題目下來的話代碼量也不是太少
自己做的話才能學到東西

『伍』 基於linux下的c編程,要求能夠檢查出文件長度大於0x7f的文件,並顯示出文件的具體位置

1.文件大小的檢查:去看看APUE(Advanced Programming in The UNIX Environment Second Edition)UNIX 環境高級編程 這本書的 第四章 ,介紹文件的 使用 stat 函數 填充stat結構體,其中的st_size 就是文件大小了
2.遍歷某目錄所有文件:
opendir(具體用法可以查相關書籍或者在linux 下使用命令 man opendir 查看 ) 系統調用 會返回指定目錄下的所有文件,通過遞歸調用對比文件大小 找到你需要的文件

『陸』 基於linux的C語言程序排錯

有多個錯誤,大致如下:
1、canshu->fp=fp; 這兩的canshu還是指向未知內存的,需要先初始化
PARA *canshu, ttt;
canshu = &ttt;
canshu->fp=fp;
2、fclose(fp); 由於把fp傳給各個子線程,子進程結束前不能關閉文件

3、各個子線程共享canshu導致統計錯誤。由於各個線程統計的參數是不同的,不能共享。
文件指針canshu->fp,每次讀取後都會發生偏移,導致其他線程不是從文件開頭開始讀取的
canshu->i,每個子線程創建都被修改,導致之前線程使用的i值也被修改
4、temp=pthread_create(&thread2,NULL,printnum,NULL);
printnum線程需要保證number限制執行完之後才能執行,否則統計輸出的統計不對

『柒』 linux c現在主要應用在什麼領域

1、嵌入式有一部分是做驅動、移植,這些很多晶元廠商或大型的公司在做——自己的晶元,自己的方案,自己的驅動。採用這些方案的公司可以在這些基礎上添加自己的程序——算是應用層的了。
至於前途,要自己去實踐才知道了。

2、基於linux的開源項目,那是相當的多。去sourceforge上看看吧。

3、linux下c編程無非就涉及那幾個大的方面,當然,實際情況中需要認真深入研究,每個公司每個部門每個職位用到的知識不太相同。不過一些基本的知識是必備的。

『捌』 基於Linux下的C語言編程

#include<unistd.h>
#include<sys/types.h>
#include<sys/stat.h>
#include<fcntl.h>
#include<stdio.h>
#include<string.h>

int
main()
{
intfd;
char*p="hello";
charbuf[256]={0};
if(-1!=(fd=open("./new.txt",O_RDWR)))
{
if(-1!=write(fd,p,strlen(p)))
{
printf("WRITEOK ");
}
else
printf("WRITEFAILED ");

close(fd);
}

if(-1!=(fd=open("./new.txt",O_RDONLY)))
{
if(-1!=read(fd,buf,256))
printf("READ:%s ",buf);

close(fd);
}

return0;
}

『玖』 linux c 內核 是做什麼的

Linux是最受歡迎的自由電腦操作系統內核。它是一個用C語言寫成,符合POSIX標準的類Unix操作系統。Linux最早是由芬蘭黑客 Linus Torvalds為嘗試在英特爾x86架構上提供自由免費的類Unix操作系統而開發的。該計劃開始於1991年,這里有一份Linus Torvalds當時在Usenet新聞組comp.os.minix所登載的貼子,這份著名的貼子標志著Linux計劃的正式開始。

在計劃的早期有一些Minix 黑客提供了協助,而今天全球無數程序員正在為該計劃無償提供幫助。

技術上說Linux是一個內核。「內核」指的是一個提供硬體抽象層、磁碟及文件系統控制、多任務等功能的系統軟體。一個內核不是一套完整的操作系統。一套基於Linux內核的完整操作系統叫作Linux操作系統,或是GNU/Linux。

目錄 [隱藏]
1 架構
2 可移植性
3 專利權
4 參見
5 外部資源

[編輯]架構
今天Linux是一個一體化內核(monolithic kernel)系統。設備驅動程序可以完全訪問硬體。Linux內的設備驅動程序可以方便地以模塊化(molarize)的形式設置,並在系統運行期間可直接裝載或卸載。

Linux不是微內核(microkernel)架構的事實曾經引起了Linus Torvalds與Andy Tanenbaum之間一場著名的爭論。在這里可以看到當時爭論的內容。

[編輯]可移植性
盡管Linus Torvalds的初衷不是使Linux成為一個可移植的操作系統,今天的Linux卻是全球被最廣泛移植的操作系統內核。從掌上電腦iPaq到巨型電腦IBM S/390,甚至於微軟出品的游戲機XBOX都可以看到Linux內核的蹤跡。Linux也是IBM超級計算機Blue Gene的操作系統。

Linux目前可以在以下結構上運行:

Acorn:Archimedes,A5000和RiscPC系列
康柏:Alpha
惠普:PA-RISC
IA64:英特爾Itanium個人電腦
IBM的S/390和AS/400
英特爾80386及之後的兼容產品:80386, 80486和整個奔騰系列;AMD Athlon, Duron, Thunderbird; Cyrix系列。對英特爾8086, 8088, 80186, 80188和80280晶元的支持正在開發中。
Mips
摩托羅拉68020及以上: 新的Amigas, 一些蘋果電腦
PowerPC:所有較新的蘋果電腦
SPARC和UltraSPARC:升陽微系統的工作站
Hitachi SuperH: SEGA Dreamcast
索尼公司: PlayStation 2
微軟公司: Xbox
ARM系列
[編輯]專利權
原先Linus Torvalds將Linux置於一個禁止任何商業行為的條例之下,但之後改用GNU通用公共許可證第二版。該協議允許任何人對軟體進行修改或發行,包括商業行為,只要其遵守該協議,所有基於Linux的軟體也必須以該協議的形式發表,並提供源代碼。

Linus Torvalds曾經公開聲稱將Linux置於GNU通用公共許可證之下是他一生中所做的「最好的決定」。

熱點內容
參數訪問鍵 發布:2024-11-07 08:08:43 瀏覽:137
ftp伺服器搭建教程win10 發布:2024-11-07 08:06:20 瀏覽:259
ad伺服器有多個IP時 發布:2024-11-07 08:04:07 瀏覽:547
蘋果和安卓戰隊怎麼不顯示 發布:2024-11-07 07:58:05 瀏覽:843
發票密碼區是指哪裡 發布:2024-11-07 07:41:28 瀏覽:925
設置密碼時採用什麼表安全 發布:2024-11-07 07:41:27 瀏覽:966
電容做的存儲器 發布:2024-11-07 07:39:51 瀏覽:442
穩定性加密 發布:2024-11-07 07:39:51 瀏覽:894
伺服器電源籠子怎麼接電腦 發布:2024-11-07 07:39:34 瀏覽:993
三星韓版系統安卓套件有什麼用 發布:2024-11-07 07:25:27 瀏覽:441