㈠ 一道unix 下C语言编程疑惑,希望高手帮解释下
1、我直接粘了你的代码(我的系统是Ubuntu10.04),然后
$gcc -o xxx xxx.c //编译通过
$./xxx //也可以执行
出错的话,说明你应该不是用的Linux系统吧,网上给出的原因:
编译时需要加-lsocket选项
http://faq.csdn.net/read/166652.html
http://jimobit.blog.163.com/blog/static/28325778200981471439881/
不过我很疑惑的是别人都是在写socket程序时才需要这个选项,你的代码和socket没关啊。。。
2、关于fork()函数的调用与返回,可以看看文库里的这篇文章:
http://wenku..com/view/61067c68011ca300a6c39031.html
㈡ unix下C编程,编译的时候总是提示undefined reference to'fread'
fread 是标准输入输出库中的函数,不同版本的编译器在默认库上有所区别。有的不用写即包含所有常用库,有的编译器是零包含的。
unix下c语言编译器要想使用库函数,必须对库进行相关声明
#include <stdio.h>
fread介绍附上
函数原型
size_t fread ( void *buffer, size_t size, size_t count, FILE *stream) ;
功 能
从一个文件流中读数据,最多读取count个元素,每个元素size字节,如果调用成功返回实际读取到的元素个数,如果不成功返回 0。
参 数
buffer
用于接收数据的内存地址,大小至少是size*count字节.
size
单个元素的大小,单位是字节
count
元素的个数,每个元素是size字节.
stream
输入流
返回值
实际读取的元素个数.如果返回值与count不相同,则可能文件结尾或发生错误.
从ferror和feof获取错误信息或检测是否到达文件结尾.
㈢ 《UNIX编程艺术豆瓣》pdf下载在线阅读全文,求百度网盘云资源
《UNIX编程艺术豆瓣》网络网盘pdf最新全集下载:
链接:https://pan..com/s/1wKT72J4KeTo9JhQYGi4qcQ
㈣ 《UNIX环境高级编程(第3版)》pdf下载在线阅读,求百度网盘云资源
《UNIX环境高级编程(第3版)》史蒂文斯(W.RichardStevens)拉戈(StephenA.Rago)电子书网盘下载免费在线阅读
链接: https://pan..com/s/1yNi_9ZPoVCa8FWNHYBEnGQ 密码:tnd7
书名:UNIX环境高级编程(第3版)
作者名:史蒂文斯(W.RichardStevens)拉戈(StephenA.Rago)
豆瓣评分:9.5
出版社:人民邮电出版社
出版年份:2014-6-1
页数:812
内容介绍:
《UNIX环境高级编程(第3版)》是被誉为UNIX编程“圣经”的Advanced Programming in the UNIX Environment一书的第3版。在本书第2版出版后的8年中,UNIX行业发生了巨大的变化,特别是影响UNIX编程接口的有关标准变化很大。本书在保持前一版风格的基础上,根据最新的标准对内容进行了修订和增补,反映了最新的技术发展。书中除了介绍UNIX文件和目录、标准I/O库、系统数据文件和信息、进程环境、进程控制、进程关系、信号、线程、线程控制、守护进程、各种I/O、进程间通信、网络IPC、伪终端等方面的内容,还在此基础上介绍了众多应用实例,包括如何创建数据库函数库以及如何与网络打印机通信等。此外,还在附录中给出了函数原型和部分习题的答案。
作者介绍:
W. Richard Stevens,国际知名的UNIX和网络专家,备受赞誉的技术作家。生前着有多部经典的传世之作,包括《UNIX网络编程》(两卷本)、《TCP/IP详解》(三卷本)和本书第1版。
㈤ 《unix环境高级编程》这本书要用到C++吗 我没有学过C++,我只学过C语言
这本书只用到C.
至于看不看得懂,下载个电子版看看不就得了,不要跟我说你不知道怎么找电子书。
网络搜索 "UNIX环境高级编程 filetype:pdf"
ps:我怀疑高级编程是指 使用高级语言C的编程,本身的内容一开始并不深奥。
㈥ UNIX C编程高手帮忙看下,这个unix c程序最终怎么成死循环了。
你fork()一个子进程,该子进程会开辟一段新的内存单元,它对父进程的所有资源销历磨进行了拷贝,父进程先执行,打印father:aaaaa后跳出循环,而fork产生的子进程会执行child:100,由于子进程没有跳出循烂枝环,子进程又会fork产生孙进程,然后子进程就变成孙进程的父进程,一亏斗样打印father:aaaaa后跳出循环,孙进程会执行child:100,如此重复,孙进程又产生曾孙进程.......(子子孙孙无穷溃也!)
如果修改一下你的代码,就不会出现这种问题,如下:
#include<unistd.h>
#include<stdio.h>
#include<stdlib.h>
intmain()
{
intb=100;
charc[10]="aaaaa";
while(1)
{
printf("begin... ");
sleep(1);
if(fork()==0)
{
printf("child:%d ",b);
getchar();
exit(0);
}else
{
printf("father:%s ",c);
sleep(1);
break;
}
}
return0;
}
修改后的运行结果如截图:
㈦ unix c编程:函数要求输入两个文件名,将指定文件 a 的内容逐行读出来,写入另外一个文件 b,并在 b 文件
void file(char * file_in,char * file_out)
{
FILE *pFin=NULL,*pFout=NULL;
char buf[1025];
int counter=0;
pFin=fopen(file_in,"r");
if(pFin == NULL)
{
printf("Open file %s failed\n",file_in);
return;
}
pFout=fopen(file_out,"w");
if(pFout == NULL)
{
printf("Open file %s failed\n",file_out);
fclose(pFin);
return;
}
sprintf(buf,"%d\n",counter);
fputs(buf,pFout);
while(fgets(buf,1024,pFin))
{
counter++;
fputs(buf,pFout);
}
fseek(pFout,0,SEEK_SET);
sprintf(buf,"%d\n"磨贺,counter);
fputs(buf,pFout);
fclose(pFin);
fclose(pFout);
}
int main(int argc, char* argv[])
{
file("in.txt","慎游逗out.txt"宽卖);
return 0;
}
㈧ Unix下C编程和Linux C下编程有什么关系
1 没有什么大的区别。
2 使用领域要瞎正看客户的应用了
3 想接触这方面的话,最基本的是要精通一门语言。有利于学习编程磨唤悔。链迟 还有就是要了解和学习Linux系统。
㈨ 《C程序设计语言第2版·新版》pdf下载在线阅读全文,求百度网盘云资源
《C程序设计语言(第2版·新版)》([美] Brian W. Kernighan)电子书网盘下载免费在线阅读
链接:
书名:C程序设计语言(第2版·新版)
作者:[美] Brian W. Kernighan
译者:徐宝文
豆瓣评分:9.4
出版社:机械工业出版社
出版年份:2004-1
页数:258
内容简介:
在计算机发展的历史上,没有哪一种程序设计语言像C语言这样应用广泛。本书作者是C语言的设计者之一Dennis M. Ritchie和着名计算机科学家Brian W. Kernighan合着的一本介绍C语言的权威经典着作。我们现在见到的大量论述C语言程序设计的教材和专着均以此书为蓝本。
原着第1版中介绍的C语言成为后来广泛使用的C语言版本——标准C的基础。人们熟知的“hello,World"程序就是由本书首次引入的,现在,这一程序已经成为众多程序设计语言入门的第一课。原着第2版根据1987年制定的ANSIC标准做了适当的修订.引入了最新的语言形式,并增加了新的示例,通过简洁的描述、典型的示例,作者全面、系统、准确地讲述了C语言的各个特性以及程序设计的基本方法。
对于计算机从业人员来说,本书是一本必读的程序设计语言方面的参考书。
作者简介:
Brian W. Kernighan,贝尔实验室计算科学研究中心高级研究人员,着名的计算机科学家。参加了UNIX系统、C语言、AWK语言和许多其他系统的开发,同时出版了许多在计算机领域具有影响的着作,如《The Elements of Programming Style》《The Practice of Programming》《The UNIX Programming Environment》《The AWK Language》《Software Tools》等。
Dennis M. Ritchie,1967年加入贝尔实验室。他和 Ken L. Thompson 两人共同设计并实现的C语言改变了程序设计语言发展的轨迹,是程序设计语言发展过程中的一个重要里程碑。与此同时,他们还设计并实现了UNIX操作系统。正是由于这两项巨大贡献,Dennis M. Ritchie 于1983年获得了计算机界的最高奖——图灵奖。此外,他还获得了ACM、IEEE、贝尔实验室等授予的多种奖项.。
㈩ 如何开始unix下c编程的学习
ubuntu是Linux 的一种,Linux 不是 Unix ,是它的类似的操作系统。网络有他们的介绍。
Unix 、Linux 环境下,最佳的GNU 编译器确实是 gcc,他包含了 C、C++、Objective-C、 Fortran、 Java、 Ada、 Go 语言的编译功能,相当强大。
emace确实是文本编辑器,确实可以用来编写源代码,然后用gcc编译连接成为可执行程序。
如果只是学习编程的话,用虚拟机确实可以实现要求。至于是否愿意安装一个全新的操作系统,则随自己的意愿。不过如果你确实打算在Linux系统下好好学习编程的话,建议还是安装一套的好。