SCR_public/23SCR/SCR011/SCR011.txt
2024-12-09 11:58:49 +01:00

137 lines
2.2 KiB
Plaintext

1/
meme chose avec write(1);
2/
#include<stdio.h>
#include<fcntl.h>
#include<unistd.h>
#include<stdlib.h>
#define szbuf 256
int main(int argc, char const *argv[])
{
char buf[szbuf];
int f1,f2,n,m;
if(argc<3)
{
fprintf(stderr, "Usage : %s <SRC.FILE><TRUC.FILE>",argv[1]);
exit(1);
}
f1 = open(argv[1],O_RDONLY);
if(f1 == -1)
{
perror("Opening source file fails");
exit(2);
}
f2 = open(argv[2],O_WRONLY|O_TRUNC|O_CREAT,0600);
if(f2 == -1)
{
perror("Opening destination file fails");
exit(3);
}
while(n = read(f1,buf,szbuf))
{
m = write(f2,buf,n);
if(m == -1)
{
perror("Writing in file fails");
exit(4);
}
}
close(f1);
close(f2);
exit(0);
}
3/
#include<stdio.h>
#include<fcntl.h>
#include<unistd.h>
#include<stdlib.h>
#include <string.h>
#define szbuf 256
int main(int argc, char const *argv[])
{
char buf[szbuf];
int a, b, c, d;
if(argc<2)
{
fprintf(stderr, "Usage: %s ./store_numb <file_name>",argv[1]);
exit(1);
}
a = open(argv[1],O_WRONLY|O_TRUNC|O_CREAT,0600);
if(a == -1)
{
perror("Opening destination file fails");
exit(2);
}
b = open(argv[2],O_WRONLY|O_TRUNC|O_CREAT,0600);
if(b == -1)
{
perror("Opening destination file fails");
exit(3);
}
write(1,"Numb --> ",9);
memset(buf,0,szbuf);
while(b = read(0,buf,szbuf))
{
d = (int)strtol(buf,NULL,0);
c = write(a,&d,sizeof(int));
if(c == -1)
{
perror("Writing in file fails");
exit(3);
}
memset(buf,0,szbuf);
write(1,"Numb --> ",9);
}
close(a);
exit(0);
}
4/
#include<stdio.h>
#include<fcntl.h>
#include<unistd.h>
#include<stdlib.h>
#include <string.h>
#define szbuf 256
int main(int argc, char const *argv[])
{
char buf[szbuf];
int a, b, c, d;
if(argc<2)
{
fprintf(stderr, "Usage: %s ./store_numb <file_name>",argv[1]);
exit(1);
}
a = open(argv[1],O_WRONLY|O_TRUNC|O_CREAT,0600);
if(a == -1)
{
perror("Opening destination file fails");
exit(2);
}
write(1,"Numb --> ",9);
memset(buf,0,szbuf);
while(b = read(0,buf,szbuf))
{
d = (int)strtol(buf,NULL,0);
c = write(a,&d,sizeof(int));
if(c == -1)
{
perror("Writing in file fails");
exit(3);
}
memset(buf,0,szbuf);
write(1,"Numb --> ",9);
}
close(a);
exit(0);
}