当前位置 : 主页 > 编程语言 > java >

Linux 编程简单示例代码

来源:互联网 收集:自由互联 发布时间:2022-06-30
Linux进程管理 编辑a.c 文件 #include stdio.h #include unistd.h int main() { printf( "Message aaaa\n" ); if ( fork() ) { sleep(4); printf( "Message bbbb\n" ); if ( fork() ) { sleep(2); printf( "Message cccc\n" ); }else{ sleep(1); prin

 Linux进程管理 

编辑a.c 文件

#include <stdio.h>
#include <unistd.h>

int main()
{
printf( "Message aaaa\n" );
if ( fork() ) {
sleep(4);
printf( "Message bbbb\n" );
if ( fork() ) {
sleep(2);
printf( "Message cccc\n" );
}else{
sleep(1);
printf( "Message dddd\n" );
}
}else{
sleep(1);
printf( "Message eeee\n" );
if ( fork() ) {
sleep(2);
printf( "Message ffff\n" );
}else{
sleep(6);
printf( "Message gggg\n" );
}
}
return 0;
}

 

 Linux 编程简单示例代码_#include

 

编译 a.c 文件

Linux 编程简单示例代码_linux_02

  

运行 a.out

./a.out

Linux 编程简单示例代码_#include_03

 Linux信号处理

编辑 a.c 文件

 Linux 编程简单示例代码_i++_04

 

编译 a.c 文件

gcc a.c

 Linux 编程简单示例代码_i++_05

 

运行 a.out 文件

./a.out

Linux 编程简单示例代码_i++_06

Linux多线程 

Lin编辑 a.c

#include <stdio.h>
#include <string.h>
#include <unistd.h>
#include <pthread.h>

char buffer[100] = "Hello" ;
pthread_t id ;


void *mystart(void *param)
{
int i;
for (i=0; i<10; i++) {
printf( "Thread %d [%s]\n", i, buffer );
sleep(1);
}

return NULL ;
}

int main()
{
int i;
pthread_create( &id, NULL, mystart, NULL );

for (i-0; i<15; i++) {
printf( "Main %d [%s]\n", i, buffer );
if ( i == 5 ) {
strcpy( buffer, "-----" );
}
sleep(1);
}

printf( "Hello,world.\n" );
return 0;
}

 

 Linux 编程简单示例代码_i++_07

编译运行

Linux 编程简单示例代码_i++_08

 Linux 管道

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

void readMessage(int fd)
{
int k;
char b[8];
for(;;){
k = read(fd,b,1);
if(k!=1) break;
putchar(b[0]);
}
}

int main()
{
int pipefd[2];
pipe(pipefd);
if(fork())
{
int i;
for(i=0;i<10;i++){
write(pipefd[1],"hello\n",6);
}
}else
{
readMessage(pipefd[0]);
}
}

 

 Linux 编程简单示例代码_linux_09

编译运行

Linux 编程简单示例代码_i++_10

 Linux makefile文件

 编写 add.c  show.c  a.c 三个文件

// add.c文件:
#include <stdio.h>

void add(int *a,int *b)
{
scanf("%d %d",a,b);
}

// show.c 文件:
#include <stdio.h>

void show(int c)
{
printf("%d\n",c);
}

// a.c 文件:
#include <stdio.h>

void add(int *a,int *b);
void show(int c);

int main()
{
int a,b,c;
add(&a,&b);
c=a+b;
show(c);
return 0;
}

 

 Linux 编程简单示例代码_linux_11

 

编写makefile文件

myapp : a.o show.o add.o
gcc a.o show.o add.o -o myapp

a.o : a.c
gcc -c a.c

show.o : show.c
gcc -c show.c

add.o : add.c
gcc -c add.c

 

 Linux 编程简单示例代码_#include_12

Linux 编程简单示例代码_i++_13

 

运行 makefile 文件

make

 Linux 编程简单示例代码_i++_14

运行 myapp

./myapp

Linux 编程简单示例代码_i++_15

 基本I/O文件操作

编写w.c写文件:

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

int main()
{
int fd = open("myfile.txt",O_WRONLY|O_CREAT,0644);
if(fd<0)
{
printf("File cannot open!\n");
return 1;
}
write(fd,"wjwwjwwjwwjwwjw",15);
close(fd);
return 0;

}

 

Linux 编程简单示例代码_i++_16

 

运行 w.c 文件

Linux 编程简单示例代码_i++_17

 

编写读文件r.c

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

int main()
{
int k;
char b[1000];
int fd = open("myfile.txt",O_RDONLY);
if(fd < 0){
perror("cannot open file!");
return 1;
}
k = read(fd,b,1000);
printf("%d\n",k);
b[k]=0;
printf("%d\n",b);
close(fd);
return 0;
}

 

Linux 编程简单示例代码_linux_18

 

运行 a.out

Linux 编程简单示例代码_linux_19

 


 

完成! 

 

【版权声明】本博文著作权归作者所有,任何形式的转载都请联系作者获取授权并注明出处!

【重要说明】本文为本人的学习记录,论点和观点仅代表个人而不代表当时技术的真理,目的是自我学习和有幸成为可以向他人分享的经验,因此有错误会虚心接受改正,但不代表此刻博文无误!

【Gitee地址】秦浩铖:​​https://gitee.com/wjw1014​​


上一篇:python 爬取历史天气
下一篇:没有了
网友评论