当前位置:首页 » 操作系统 » cwindowslinux

cwindowslinux

发布时间: 2024-10-21 03:05:53

A. linux下的c语言编程和windows下的c语言编程有什么区别

语言本身差别不大。主要主要是和系统交互的时候不同。一个是Linux的POSIX接口,一个是Windows的
Win32
API。
Linux下的接口因为源自UNIX,有很多API明显是C库的风格,风格比较老旧。但是Win32
API风格更现代、更高级一些。比如Linux下fork/exec、Windows下
CreateProcess
。而且Windows的API提供很多
图形界面
的相关功能,比如支持窗口间操作。Linux下需要单独的
GUI库
比如GTK+等等。

B. Linux下的C编程和Windows下有什么区别越详细越好,谢谢......

Linux 简单的说跟 Windows 一样是一种操作系统,只是两者之间的使用方法和习惯有所区别。具体的区别其实很大,不过已经不是能在这里说清楚的事情了。
对于 C 编程来说,他们最大的区别就是提供给你的系统相关的特性不一样。这个导致了所谓的移植性问题以及平台特性的问题。形象点的比喻是你可以认为 Linux 和 Windows 都是人。他们都懂一部分英语,但是一个的母语是汉语,一个是德语。你用的英语如果他们刚好都懂,那他们就能很好的帮你做事。如果你说的英语他们不懂,那就只能用他们的母语给他们说。这样的结果就是你用德语说的 Linux 听不懂;你用汉语说的 Windows 又听不懂。所以,如果是简单的编程,那他们没有多大区别。如果是复杂的...你就准备翻译一方的母语成另一方的母语吧。

C. linux c++与windows c++有什么区别

函数库的区别linux下的C函数库和windows下的函数库系统调用的机制不一样Glibc包含了主要的C库。这个库提供了基本例程,用于分配内存、搜索目录、打开关闭文件、读写文件、字串处理、模式匹配、数学计算等等。所说的机制不一样不单是指中断号的问题,中断号也是通过input参数和output把函数地址和输出地址定位在寄存器的,那些函数在windows和linux下的实现应该是不一样的,就拿文件系统来说,ext3和fat32的怎么可能一样.还有mm内存管理,都是不一样的.中断还是属于硬件层的,X86上的应该都差不多,但操作系统层的实现就大不相同了。
其他区别:
1、系统平台不一样
底层开发就涉及到了系统内核的问题,对于linux来说,可以知道里面是什么结构,而windows则不然。
2、编译器环境不一样
linux采用gcc编译器,gdb调试工具,和多种可视化的编辑器如 emacs,kedit等等,也有文本的vi/vim,GDB的功能是非常强大的,gcc对标准的支持是相当的好。
3、针对人群不一样
win下主要还是面向商业化的开发,而绝大多数的编程爱好者则喜欢属于自己开阔自由的系统下编程,不愿意禁锢在windows下(MS)的包围中
4、发展方向不一样。
OpenSource的思想已经在linux这片净土开花找资料方便,源代码公开,可以体验开发的乐趣win下,ms逐步把一批开发人员束缚在它自己的系统里面。
5、版权问题
win下的好多东西都涉及到版权问题,linux的free软件虽然是开放软件,不过好多都是免费用于商业化的。

D. 关于C语言在LINUX和WINDOWS下的区别。

如果没有涉及系统独有的库函数或者编程方法(即只用符合ANSI C标准的代码和方法)就没有区别

如果涉及到系统编程,二者有所区别,主要是库函数有所不同,而且文件系统不同、对某些函数的执行方式不同。

\n 为ASCII的0x0a 换行
\r 为ASCII的0x0d 回车
在windows 系统中,当你输入回车时会自动变成\r\n
在linux下的回车键只代表\n
而在windows下的回车键表示\r\n
\n为进入下一行,\r为打印头回到行首上
linux/unix下只用\n,它就表示回车+换行
而windows下,\r只回车不换行的,\n是换行,但在有些编辑中,单独的\n是不会换行的(如notepad)
一般在程序中,写\n就可以了,它在linux或windows中都能实现回车+换行的功能(只是在文本文件中,linux只会有0x0a,windows会自动换为0x0d 0x0a)
下面举个例子: www.2cto.com
#include<stdio.h>
int main()
{
char a[10]="abc\r";
printf(a);
return 0;
}
程序运行时没有任何输出。
原因就是 \r 回车 表示打印头回到该行起始位置,从而覆盖了abc,所以控制台上就没有任何输出啦!

E. Windows、Linux、UNIX、Dos操作系统分别是用什么语言编写的

Windows、Linux、UNIX、Dos操作系统的核心代码大部分是使用C和C++编写,底层接口用汇编编写.

以windows为例,根据几年前微软在美国公布的内容,WINDOWS本身属于微内核系统,WINDOWS98总共大概不到10万行代码,而WINDOWS2000则已经有20余万行代码,其中80%是用C++编写,其余部分有C和汇编,底层接口用汇编编写。

微内核系统从概念上是指“只包括操作系统的基本功能,例如内存管理和进程管理等等”,就连对各个文件系统的支持也不算在内.
所以一个微内核系统的操作系统能够有20万行代码已经很多了。
之所以微软选择了C++而不想LINUX一样选择C,其根本原因就是WINDOWS操作系统本身是微内核系统,所以扩展性及以后的维护要求非常重要,所以C++的类的概念就能在这里很好的利用,但是毕竟C++的效率不如标准C及汇编,所以在一些明显以效率为重的地方用的还是标准C及汇编。

编写完毕后,WINDOWS上的其他用户态程序(包括所有驱动程序、计算器、游戏等等所有你现在拿鼠标能够操作的东西)另行开发,例如:扫雷游戏就是用VB写的。

F. 到底是选择linux开发还是windows开发他们到底有什么区别

可是linux的C开发有什么不同呢?
回答:Windows上的C开发是什么呢? 如果你只是在潭浩强书的水平的话,Windows上的开发跟Linux上的C开发没有什么不同,因为都是基本的简单的语言的学习.C语言的学习到什么平台都一样.
那么Windows中的C开发和Linux中C开发有什么不同.不同是有的.比如.Windows下开发用Windows的库,Linux下用Linux下的库.虽然库不同,但是通一懂百,所以不管是选择在Windows下C开发.还是Linux下开发.都是学习进步,以后再根据需要学习下对方就可以了.

另外一个不同的地方.Windows上的C开发主要借助 VS或者VC平台.但是Linux下就有更多的选择了.当然了很多的人认为Linux那么多的选择也不如Windows上的VS强大.
但是也有人认为Linux上的开发很美妙.比如你所说的.

linux开发,一旦毕业,会有公司要么?
答: 国内在Linux下开发的人还不够,因为嵌入式的发展很快.不过话说回来,只要你学好了,到时候,你自己的眼界开了.不要说公司要你,也许你自己就开公司了...但是如果你学得不好,就算Windows大行天小,你一样没有公司要.

国内的Linux公司这么少,是不是linux程序员只能在Linux下开发,没有能力在windows下开发?
回答:什么叫Linux公司? ,国内对于Linux系统相关方面应用是很多的.这是你的了解错误..
Linux没有公司,Linux是一个生态环境.
没有能力在windows下开发? 这个问题,其实很好回答,你会用Nokia的手机,转去用三星的手机就不会用了吗?确实但是比从没有用过手机的呢?
上面的例子也许不是很恰当,但是说明了一个问题.知识是很具有普遍适当性的.但是只是一些思想.
如果想深入当然还得另花时间.

总结: 山都很高,上到了山顶都可以 一览众山小.
PS: 尝试在Linux下学习编程,会比在单纯在Windows下学习编程获得更多..

G. linux下的c编程和windows下的c编程

C标准都是一样的,但是不同的操作系统下有不同的系统API调用,也有不同的编译器!如果只是做简单的练习,不需要调用系统函数的话,是完全一样的,但是在WINDOWS下编译生成的可执行文件在LINUX下是运行不起来的,要在LINUX下运行必须用LINUX下的编译器,比如GCC,这种编译器可以找到WINDOWS版本的,但是编译出来的就在WINDOWS下运行不了!简单说就是不同操作系统下的可执行文件是不能通用的,因为不同的操作系统有不同的进程结构.

热点内容
倒计时脚本 发布:2024-10-21 05:42:13 浏览:246
编译原理广工试卷 发布:2024-10-21 05:41:07 浏览:759
数控编程要点 发布:2024-10-21 05:08:48 浏览:292
python培训教程 发布:2024-10-21 05:00:46 浏览:603
服务器抽风了怎么解决 发布:2024-10-21 04:47:19 浏览:564
php引号转义函数 发布:2024-10-21 04:47:18 浏览:263
waves压缩 发布:2024-10-21 04:35:03 浏览:602
三星sd卡加密已停用 发布:2024-10-21 04:33:30 浏览:945
php去除数组空值 发布:2024-10-21 04:30:57 浏览:741
380vpc段都配置什么保护 发布:2024-10-21 04:08:17 浏览:898