Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 45b16ea

Browse files
author
Safa Bayar
committed
add first documents
1 parent a567ad4 commit 45b16ea

File tree

23 files changed

+192
-0
lines changed

23 files changed

+192
-0
lines changed

‎Lab2/Lab2.txt‎

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
Programlama çalısması
2+
3+
- Aşağıda belirtilen isimde bir klasör oluşturunuz:
4+
"İsminiz-Soyisminiz-Lab2"
5+
- Yeni oluşturduğunuz klasöre gidiniz.
6+
- Aşağıda belirtilen özelliklere sahip bir C programı yazınız.
7+
- Programınızın kaynak dosyasının ismi "prog1.c" olmalı.
8+
- Programınızın çalıştırılabilir halinin ismi "prog1" olmalı.
9+
- Programınız aşağıda adımları gerçekleştirecektir.
10+
- Program tam olarak 4 girdi alacaktır.
11+
- Girdi sayısı 4 değilse, programınızın bir uyarı mesajı verecek ve sonlanacaktır.
12+
- 4 girdi verildiğinde programınızın verilen girdileri her biri bir satırda şekilde listeleyecek ve sonlanacaktır.
13+
14+
15+
Örnek:
16+
./prog1 abc def
17+
Tam 4 girdi verilmelidir!
18+
2 girdi verdiniz.
19+
20+
./prog1
21+
Tam 4 girdi verilmelidir!
22+
0 girdi verdiniz.
23+
24+
./prog1 abc def ghi jkl
25+
1. girdi: abc
26+
2. girdi: def
27+
3. girdi: ghi
28+
4. girdi: jkl
29+
30+
Yardım:
31+
- Programınıza dışarıdan girdi almak için aşağıdaki yapıyı kullanabilirsiniz.
32+
int main(int argc, char *argv[])
33+
- program çalıştığında "argc" toplam girdi sayısını (programın ismi ile birlikte), "argv" dizisi ise girdileri (programın ismi ile birlikte) içerecektir.
34+
35+
- Programınızı aşağıda belirtilen şekilde derleyebilirsiniz.
36+
gcc prog1.c -o prog1
37+
- Bu komut "prog1.c" kaynak dosyasını derleyecek ve "prog1" isimli çalıştırılabilir dosya oluşturacaktır.

‎Lab3/Lab3.txt‎

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
Yapılacak adımlar
2+
- Yanda belirtilen isimde bir klasör oluşturunuz "isminiz-soyİsminiz-Lab3"
3+
- Yeni oluşturulan klasöre gidiniz.
4+
- Aşağıda belirtilen operasyonları gerçekleştiren "prog2" isminde bir C programı yazınız. Programınızın kaynak dosyasını "prog2.c" ismiyle kaydediniz.
5+
- Programınız argüman olarak bir dosya ismi alacaktır.
6+
- Dosya ismi belirtilmez ise, anlamlı bir hata mesajı vererek program sonlanacaktır.
7+
- Programınız verilen isimde bir dosya oluşturacaktır.
8+
- Dosyanın içerisine aşağıda belirtilen metin yazacaktır.
9+
"Bu satır benim işlemim tarafından yazıldı"
10+
- Dosya kapatılacaktır.
11+
- Dosya tekrar açılacaktır.
12+
- Dosyanın sonuna aşağıda belirtilen metin eklenecektir. Belirtilen yer tutuculara işlem numarası ve dosya belirteci numarası yazılacaktır.
13+
"Bu da ikinci satır, işlem numarası: %d, dosya belirteci %d"
14+
- Dosyanın başına dönülecektir.
15+
- Dosyanın içeriği okunacak ve standart çıktıya yazılacaktır.
16+
- Son olarak dosya kapatılacaktır.
17+
18+
19+
İpuçları:
20+
- Dosya opsiyonları birbirleri ile "OR" işlemine sokularak belirtilmelidir. Örneğin dosyayı yaratmak için "O_WRONLY | O_CREAT | O_TRUNC" kullanılabilir.
21+
- Dosya yaratırken son argüman olarak dosya izinlerinin belirtilmesi gerekmektedir. Bu amaçla "0644" son argüman olarak kullanılabilir.
22+
- Öyleyse "yeniDosya.txt" isminde bir dosya oluşturmak için aşağıda belirtilen komut çalıştırılabilir:
23+
- fd = open("yeniDosya.txt", O_WRONLY | O_CREAT | O_TRUNC, 0644);
24+
- Bir char dizisine formatlı bir metin yazmak için sprintf(2) kullanılabilir.
25+
n = sprintf(buff,"İlk sayi %d, ikinci sayi %f.\n", 5, 6,2);
26+
Bu şekilde çalıştırıldığında n sayısı buff dizisine yazılan byte sayısını verir.
27+
- Kullanacağınız fonksiyonların tanımlandığı kütüphaneleri belirlemek için Unix el kitabını kullanabilirsiniz.

‎Sonradan Yaptiklarim/a.out‎

8.88 KB
Binary file not shown.

‎Sonradan Yaptiklarim/c1.c‎

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
#include <stdio.h>
2+
#include <sys/types.h>
3+
#include <sys/stat.h>
4+
#include <fcntl.h>
5+
6+
char buf[2323];
7+
8+
int main(){
9+
10+
sprintf("Hello World! ");
11+
int fd = open("den1",O_CREATE | O_APPEND | O_FSYNC, 0644);
12+
write(fd,buf);
13+
close(fd);
14+
15+
return 0;
16+
17+
}
18+

‎Sonradan Yaptiklarim/c2.c‎

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
#include <sys/types.h>
2+
#include <sys/stat.h>
3+
#include <fcntl.h>
4+
#include <unistd.h>
5+
#include <stdio.h>
6+
7+
8+
int main(int argc,char * argv[]){
9+
10+
struct stat FileStat;
11+
char buf[1000];
12+
if(argc != 2){
13+
printf("Hatali girdi sayisi");
14+
}
15+
int pis = getpid();
16+
int fd = open(argv[1], O_WRONLY | O_CREAT | O_TRUNC , 0644);
17+
int t = sprintf(buf,"Ilk yazi \n Process ID : %d \n",pis);
18+
write(fd,buf,t);
19+
close(fd);
20+
21+
22+
int fd1 = open(argv[1], O_WRONLY | O_APPEND);
23+
int t1 = sprintf(buf,"Tek Tek sayadim eklemeli");
24+
write(fd1,buf,t1);
25+
close(fd1);
26+
printf("%d\n",fd1);
27+
int fd2 = open(argv[1], O_RDONLY);
28+
read(fd2,buf,23);
29+
lseek(fd2,54,SEEK_SET);
30+
stat(argv[1],&FileStat);
31+
printf("INODE : %d\n",FileStat.st_ino);
32+
printf("File Size: %d \n",FileStat.st_size);
33+
34+
}

‎Sonradan Yaptiklarim/safa‎

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
Ilk yazi
2+
Process ID : 28883
3+
Tek Tek sayadim eklemeli

‎safa.bayar-Lab1/safa.bayar-Calisma1‎

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
safa bayar
2+
161906001
3+
Bolu abant izzet baysal universitesi
4+
muhendislik fakultesi
5+
bilgisayar muhendisligi
6+
ferhat demiray
7+
sinyaller ve sistemler
8+
kontrol sistemleri ...
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
161906001
2+
bilgisayar muhendisligi
3+
Bolu abant izzet baysal universitesi
4+
ferhat demiray
5+
kontrol sistemleri ...
6+
muhendislik fakultesi
7+
safa bayar
8+
sinyaller ve sistemler

‎safa.bayar-Lab2/prog1‎

12.1 KB
Binary file not shown.

‎safa.bayar-Lab2/prog1.c‎

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
#include <stdio.h>
2+
3+
4+
int main(int argc, char *argv[]){
5+
int i = 0;
6+
if(argc != 5){
7+
printf("Tam 4 girdi vermelisiniz.\n");
8+
printf("Siz %d girdi verdiniz\n",argc-1);
9+
return -1;
10+
}
11+
for(i=1;i<=4;i++){
12+
printf("%d girdi: %s\n",i,argv[i]);
13+
}
14+
return 0;
15+
}

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /