linux c语言编程

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux c语言编程相关的知识,希望对你有一定的参考价值。

一.编写一个C语言程序,用open函数在当前目录下创建一个文件test.txt,然后将数字1~100按顺序写入文件, 之后分别读出第50(从文件开始处计算)、第100个字节处的数字, 并输出该数字到标准输出。然后关闭并删除文件。
要求:.
i. 在Linux操作系统下调试通过后,在试卷上填写你的程序,并写好完整的注释。
ii. 写下你对程序中所使用的open,、write、close等文件系统调用的功能的理解。
iii. 雷同的程序两者都按零分处理。

二. 首先用shell命令在用户主目录下创建一个文件myfile, 然后用C语言编写一个程序打印出该文件的类型和组权限位, 判断该用户对该文件是否有执行权限。如果没有,请通过chmod函数给它加上执行权限。
要求和问题:
i. 你是如何用shell命令创建一个文件的?什么是用户的主目录?
ii. 在Linux操作系统下调试通过后,在试卷上填写你的程序,并写好完整的注释。
iii. 雷同的程序两者都按零分处理。

作业需要两个C程序,应该不难,哪位大哥帮我看看,调试成功后把程序发给我qq6920391 邮箱6920391@qq.com并留下回答者昵称。成功后直接给分。
PS:不要把程序贴到知道上,以免别人复制。程序要原创的。是linux下的C语言编程不是PC下的。有想做的请在知道后跟贴,方便我给您分数。本人linux小白+_+,还有第一题要用到open、write、close等文件系统调用的功能。

那么牛的程序,不像是学校的考试题。
起码是linux 下的C语言编程,搞嵌入式开发的吧。
我也来试试,正想向这个方向研究呢。呵呵

另:公司只能上百度,只能这里给你了.
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <stdio.h>
#define LEN 100
main()

int fd, len;
int i;
char ch[LEN];
fd=open("test.txt",O_CREAT|O_RDWR,10705);
if(fd)

for(i=1;i<101;i++)

sprintf(ch,"%d",i);
write(fd,ch,strlen(ch));

close(fd);

fd = open("test.txt",O_RDWR);
lseek(fd,50,SEEK_SET);
if(fd)

len = read(fd,ch,1);
ch[len] = '\0';
printf("%s\n",ch);

lseek(fd,100,SEEK_SET);
if(fd)

len = read(fd,ch,1);
ch[len] = '\0';
printf("%s\n",ch);

close(fd);
if(!remove("test.txt"))
printf("test.txt have remove\n");
else
printf("can't remove\n");


这是第一题.
参考技术A 我贴个第二题的吧。
#/bin/sh
cd
touch myfile

============================================================
#include<stdio.h>
#include<sys/stat.h>
#include<stdib.h>
main()

struct stat file;
stat("myfile",&file);
print("The file type is :");
if(S_ISREG(file.st_mode))

print("regular file.");

else if(S_ISREK(file.st_mode))

print("directory.");

else if(S_ISDIR(file.st_mode))

print("block special file.");

else if(S_ISLNK(file.st_mode))

print("symbolic link.");

else

print("other type file.");

printf("\nThe group permission is:");
if(file.st_mode & S_IRGRP)

print("read.");

if(file.st_mode & S_IWGRP)

print ("write.");

if(file.st_mode & S_IXGRP)

print ("execute.");

else

chmod("myfile",file.st_mode|S_IXGRP);
print("\nAdded execute permission.");

参考技术B 雷同的程序两者都按零分处理 参考技术C 有一本《Linux C函数大全》的小册子,Linux的API大多数都有,和MSDN有点相似,LZ看看这个。 参考技术D linux的环境你要是认识了 简单的编程是一样的 第5个回答  2009-04-21 退学吧……

以上是关于linux c语言编程的主要内容,如果未能解决你的问题,请参考以下文章

linux环境c语言编程!问题棘手!高手进!

linux终端下如何进行C语言编译

Linux的终端怎么运行C语言

linux c语言编程

linux中执行c语言程序,段错误是怎么回事啊??谢谢!!!

linux C编程如何查看文件类型