Hakkında • Nasıl Kullanılır • Zorunlu • Bonus • Norminette • Katkıda Bulunma • Lisans
Bu, UNIX sinyallerini kullanarak iletişim kuran bir sunucu/istemci sistemidir. Sunucu, PID'sini gösterir ve gelen sinyalleri karakterlere dönüştürerek görüntülerken; istemci mesajları şifreler ve sunucunun PID'sine SIGUSR1 veya SIGUSR2 sinyalleri gönderir.
git clone https://github.com/omrfrkzu/minitalk
cd minitalk/minitalk
make
./server
./server_bonus
4º - Başka bir terminal açın, client veya client_bonus'u çalıştırın, pıd'yi yapıştırın ve bir mesaj yazın
./client [SERVER PID] [MESSAGE]
./client_bonus [SERVER PID] [MESSAGE] [EMOTE]
make
- Minitalk mandatory dosyalarını derler.
make bonus
- Minitalk bonus dosyalarını derler.
make all
- mandatory + bonus dosyalarını derler.
make clean
- Tüm .o (nesne dosyalarını) siler.
make fclean
- Tüm .o (nesne dosyalarını) ve .a (çalıştırılabilir) dosyalarını siler.
make re
- fclean
+ all
kurallarını uygular.
- Server ve client çalıştırılabilir dosyalarını üretin.
- Client, parametre olarak geçen bir stringi, işlem kimliği (PID) ile belirtilen servera iletmeli ve görüntülemelidir.
- Sadece
SIGUSR1
veSIGUSR2
sinyallerini kullanın.
- Alım onay sistemi ekleyin.
- Unicode karakterleri destekleyin.
42 Okulu'nda neredeyse her projenin, okulun kodlama standartı olan Norm'a uygun olarak yazılması beklenir.
- `for`, `do...while`, `switch`, `case`, `goto`, üçlü (ternary) operatörler veya değişken uzunluktaki diziler kullanılamaz;
- Her fonksiyon maksimum 25 satır olmalıdır (fonksiyonun süslü parantezleri hariç);
- Her satır, yorumlar dahil, en fazla 80 karakter genişliğinde olmalıdır;
- Bir fonksiyon en fazla 4 isimlendirilmiş parametre alabilir;
- Aynı satırda hem atama hem de tanımlama yapılamaz (statik olanlar hariç);
- Bir fonksiyonda 5'ten fazla değişken tanımlanamaz;
- ...
- 42 Normları - 42 kod normları hakkında bilgi.
PDF
- Norminette - Kod normuna uyumu kontrol eden araç, 42 tarafından yapılmıştır.
GitHub
- 42 Header - Vim için 42 başlık eklentisi.
GitHub
Eğer herhangi bir sorun bulursanız veya geliştirme öneriniz varsa, bu depoyu forklayıp bir issue açabilir ya da bir pull request gönderebilirsiniz.
Bu proje MIT Lisansı altında mevcuttur. Daha fazla bilgi için lütfen LICENSE dosyasına bakın.