String Sınıfını Yönetmek



Benzer belgeler
C++ Dersi: Nesne Tabanlı Programlama

String ve Karakter Dizileri. Yrd. Doç. Dr. Fehim KÖYLÜ Erciyes Üniversitesi Bilgisayar Mühendisliği Bölümü

C++ Dersi: Nesne Tabanlı Programlama 2. Baskı

1 RUBY HAKINDA 1 Ruby nin Gelişim Hikayesi 1 Neden Ruby? 1 Neden Bu Kadar Popüler? 2

Week 7. Düğüm bulma Tekli bağlı liste: phead ve ptail Dairesel bağlı liste Çift bağlı liste

Java String İşlemleri

Pascalda oluşturulacak dosyalar değişkenler gibi programın başında tanımlanır.

Fonksiyonlar (Altprogram)

Bilgisayar Programcılığı. Ögr. Gör. Cansu AYVAZ GÜVEN

2 PYTHON A GIRIŞ 13 PyCharm İle Python Projesi Oluşturma 15 Projenin Çalıştırılması 18 İlk Python Programımız 19 Açıklama Satırları 21

Aşağıdaki programı inceleyip ekrana ne yazacağını söyleyebilir misiniz?

Veri Yapıları. Amaçlar: Temel Veri Yapılarını Tanımlamalı Veri Yapılarını Veri Modeli ve Türlerini Öğreneceksiniz. İçindekiler:

Değişkenler. Geçerli değişken isimleri : baslamazamani, ad_soyad, x5 Geçersiz değişken isimleri : 3x, while

Hafta 12 Karakter Tutan Diziler

Programlama Dilleri 3

Strings(Karakter Dizisi)

Temel Bilgisayar Programlama Final Sınavı Çalışma Notları

ELN1002 BİLGİSAYAR PROGRAMLAMA 2

STRİNG DİZİLER(KATARLAR)

Değişkenler, içerisinde tek bir değer tutabilen yapılardır. Örneğin haftanın günlerini değişkenlerde tutmak istersek, her bir gün adı için bir

Bir dizinin boyutları sabittir ve kullanılmadan önce belirlenmelidir. Dizi boyutunu belirlemek için başka bir değişkende kullanabilirsiniz.

Dizi nin Önemi. Telefon rehberindeki numaralar, haftanın günleri gibi v.b.

Dizgiler. C dilinde karakter m şeklinde tek tırnak içerisinde yazılan ifadelerdir. Bu karakterlerin her biri aslında bir tamsayı ile ifade edilir.

YZM VERİ YAPILARI DERS#9: HASH FONKSİYONLARI

Örnek 4: Örnek Özyinelemeli fonksiyon örneği Bölüm 9. C++ programlama dilinde Nesne ve sınıf

ALGORİTMA VE PROGRAMLAMA II

NESNEYE YÖNELİK PROGRAMLAMA

PASCAL ARŞİVİ BÖLÜM Giriş. 7.2 Sistem Birimi ve Katarlar Chr

Pointer Kavramı. Veri Yapıları

enum bolumler{elektronik, insaat, bilgisayar, makine, gida};

Hazır Fonksiyonlar {\} /\ Suhap SAHIN Onur GÖK 1

BLM-111 PROGRAMLAMA DİLLERİ I. Ders-11 Karakter Diziler. Yrd. Doç. Dr. Ümit ATİLA

Ders 4: Diziler (Arrays( Arrays) barisgokce.com

Fonksiyonlar. C++ ve NESNEYE DAYALI PROGRAMLAMA 51. /* Fonksiyon: kup Bir tamsayının küpünü hesaplar */ long int kup(int x) {

C Konsol Giriş Çıkış Fonksiyonları

NESNEYE YÖNELİK PROGRAMLAMA

Internet Programming II

DİZİLER-KATARLAR ALGORİTMA VE PROGRAMLAMA II

Programlama Dilleri. C Dili. Programlama Dilleri-ders08/ 1

1 NEDEN PROGRAMLAMA ÖĞRENMELIYIZ?

ALFASAYISAL BİLGİLER KARAKTER DİZİLERİ (STRING)

Fonksiyonlar istenilen deger tipinde dönüs yapabilir. INT, VARCHAR deger döndürebileceğiniz gibi bir tablo da döndürebilirsiniz.

Üst Düzey Programlama

Genel Programlama II

BTP 207 İNTERNET PROGRAMCILIĞI I. Ders 9

ALGORİTMA VE PROGRAMLAMA II

Internet Programming II

Diziler İndisli Değişkenler

PROGRAMLAMAYA GİRİŞ DERS 2

Diziler. Dizi Tanımı Dizi Elemanlarına Değer Atama Diziler ve Göstergeler 2-Boyutlu Diziler

PHP, nesne-yönelimli (object-oriented) bir dil olduğu için, nesne oluşturma imkânına ve bunların kullanılmasını sağlayan metodlara da sahiptir.

BİLG Dr. Mustafa T. Babagil 1

Yrd. Doç. Dr. Caner ÖZCAN

BLM 112- Programlama Dilleri II. Hafta 4 İşaretçiler (Pointers)

BTEP243 Ders 3. class Yazım Kuralı:

Yrd. Doç. Dr. Caner ÖZCAN

İnternet Programcılığı Öğr. Gör. Serkan AKSU PHP de Dizi-Değişkenler, Nesneler. Dizi Oluşturma. Tek Boyutlu Diziler

Dr. Fatih AY Tel: fatihay@fatihay.net

HSancak Nesne Tabanlı Programlama I Ders Notları

Yukarıdakilerden hangileri DML (Data Manipulation Language) ile gerçekleştirilir?

ALGORİTMA VE PROGRAMLAMA II

ATATÜRK ÜNİVERSİTESİ BİLGISAYAR MÜHENDİSLİĞİ BÖLÜMÜ BM 104- NESNEYE YÖNELİK PROGRAMLAMA DERSİ BAHAR DÖNEMİ ÖDEV-3

Algoritma Geliştirme ve Veri Yapıları 9 Ağaç Veri Modeli ve Uygulaması. Mustafa Kemal Üniversitesi

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

Bir çeşit prosedür. Ancak bu prosedür kendiliğinden çalışır. Çalışması için tabloya veri eklemek, veri silmek, veri değiştirmek yeterlidir.

C Programlama Dilininin Basit Yapıları

Standard Template Library

INPUTBOX KULLANIMI. Komut Düğmesine uygulanan algoritma örneği

Python ile Programlamaya Giris

Veritabanı Tasarımı. Büyük/Küçük Harf ve Karakter İşleme

BMT 101 Algoritma ve Programlama I 6. Hafta. Yük. Müh. Köksal Gündoğdu 1

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

İsimler ve Kapsam. Hafta 4 Ders 2 BLG339 PROGRAMLAMA DİLLERİ KAVRAMI

Print Komutu ile Değişkenleri Yazdırmak

Pointers (İşaretçiler)

Java Programlama. Diziler, Döngüler ve Karakter Katarları (String Sınıfı)

ALGORİTMA VE PROGRAMLAMA I DERS NOTU#10

Alıştırma 1: Yineleme

1 PROGRAMLAMAYA GİRİŞ

TEMEL EXCEL. 1 - Excel e Giriş

BLM-111 PROGRAMLAMA DİLLERİ I. Ders-12 Fonksiyonlar. Yrd. Doç. Dr. Ümit ATİLA

İsimler ve Kapsam. 24 Şubat Programlama Dilleri - Pamukkale Üniversitesi 1

Nargin - Nargout. Bir fonksiyonda giriş parametrelerinin kontrolü Nargin = number of argument input

Eln 1001 Bilgisayar Programlama I

Regular Expressions Version 0.1

ALGORİTMA VE PROGRAMLAMA II

Dr. Fatih AY Tel: fatihay@fatihay.net

PYTHON PROGRAMLAMA DİLİ

YZM 2116 Veri Yapıları

ALGORİTMA VE PROGRAMLAMA I

Göstericiler (Pointers)

Programlama Dilleri III 1

Konular. Hafta 5 Veri Tipleri (Devam) BLG339 PROGRAMLAMA DİLLERİ KAVRAMI

Yrd. Doç. Dr. Caner ÖZCAN

ELN1002 BİLGİSAYAR PROGRAMLAMA 2

ENF102 TEMEL BİLGİSAYAR BİLİMLERİ VE C/ C++ PROGRAMLAMA DİLİ. Gazi Üniversitesi Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü

Yeni bir proje açarken File New - Web Site diyoruz. Gelen ekranda Visual Basic veya C# seçilebilir. Biz ders kapsamında C# programlama dilini seçtik.

İNÖNÜ ÜNİVERSİTESİ MÜH. FAK. BİLGİSAYAR MÜH. BÖL. ALGORİTMA VE PROGRAMLAMA 1 DERSİ LAB. ÖDEVİ

ArrayList Uygulamaları

Temel Giriş/Çıkış Fonksiyonları

Transkript:

String Sınıfı

String Sınıfını Yönetmek Stringler karakterlerden oluşur. Bir string sabiti çift tırnak arasında verilmiş karakterler listesidir. "Bu örnek bir string dir" 2 Yukardaki string 27 adet karakterden oluşmuştur. Stringler oldukça kullanışlıdır, fakat sınırları vardır. Bundan dolayı, sadece bellekte bulunan bir grup karakterin üzerinde değişik bir takım şeyler yapmak isterseniz, string sıfındaki bütün küçük ayrıntıları yönetmelisiniz.

String Sınıfını Yönetmek 3 Örneğin; çift tırnak arasında bulunan karakter dizisinin uzunluğu derleme sırasında sabitlenir. Eğer bir karakter diziniz varsa ve siz buna bazı karakterler eklemek, silmek veya değiştirmek isterseniz, gerçekleyeceğiniz birçok unsuru anlamak ihtiyacı doğar (dinamik bellek yönetimi, karakter dizisi kopyalama, silme, değiştirme ve ekleme gibi). Standart C++da string sınıfı, karakter dizilerinde alt düzeyli işlemler yapabilmek ve bunları yönetmek için tasarlanmıştır.

String Sınıfını Tanımlamak C++ string nesnesi bellekteki başlangıç yerini, içeriğini, karakter uzunluğunu, ve arttırılabilecek uzunluğu bilir. string'leri kullanabilmek için C++ da başlık dosyasına <string> eklenmelidir. stringadı= Bu bir String veya stringadı ( Bu bir String ) şeklide tanımlama mümkündür. 4

5 String Sınıfını Tanımlamak

6 String Sınıfını Tanımlamak

7 String Sınıfını Tanımlamak

string sınıfı üye fonksiyonları Yineleyiciler Kapasite Erişim Düzenleme String İşlemleri begin size [] operatorü + operatorü c_str end length at append data rbegin max_size push_back copy rend resize assign find capacity insert rfind reserve erase find_first_of clear replace find_last_of empty swap find_first_not_of find_last_not_of substr compare 8 Hatırlatma :: Çözünürlük Operatörü (scope resolution operator) string::npos ostringstream ile int to string

begin, end Kullanımı: string_ismi.begin() string_ismi.end() 9

rbegin, rend Kullanımı: (string::reverse_iterator kullan) string_ismi.rbegin() string_ismi.rend() 10

size, length, capacity, max_size Kullanımı: string_ismi.size() string_ismi.length() string_ismi.capacity() string_ismi.max_size() 11

resize Kullanımı: resize (Yeni_karakter_miktarı, karakter ); resize (Yeni_karakter_miktarı); 12

Kullanımı: isim.reserve(filesize) reserve 13

clear Kullanımı: string_adi.clear() 14

empty Kullanımı: string_ismi.empty() 15

Kullanımı: string_ismi[sayı] [] Operatörü 16

at Kullanımı: string_adi.at(sayi) 17

Kullanımı: string_2 += string_2 + Operatörü 18

append Kullanımı: string_1.append(string_2,<basla>,<<bitiş>>) 19

Kullanımı: push_back(karakter) push_back En sona string i bir karakter genişleterek karakter yükle. 20

assign Kullanımı: String_adi.assing(string_2,<başla>,<<bitiş>>) 21

insert Kullanım: str1.insert(str1baslama,str2,str2baslama,str2bitis) 22

erase Kullanım: string1.erase(string2,basla,bitis) 23

Kullanım: replace Str1.replace(str1bassil,str1bitsil,str2,str2basekle,str2bitekle) 24

Kullanımı: string_1.swap(string_2) swap 25

c_str Kullanımı: String1.c_str() 26

data Kullanımı: String1.data() string.h ile aynıdır. C dilinin kütüphanesidir. strlen ve memcmp kullanmak için İkisinin ilk <uzunluk> karakteri aynı mı diye bakıyor memcmp(str1,str2,i): str1 ile str2 ilj i karakterleri açısından karşılaştırılıyor. str1 ve str2 charter pointer olmalıdır. str1=str2 ise sonuc 0 eğer str1 <str2 ise -1 eğer str1 > str2 ise +1 string değeri pointer a çevirmek için kullanılır. HATIRLATMA: İki string karşılaştırması için compare kullanılır. str1.compare(str2) 27

copy Kullanımı: Str1.copy(str2,str2kopyamiktarı,str2kopyabaslayeri) Varsayılan değer 0 dır. (tampon,9) olarak kullanılmış olsaydı: içerik: Test Degi olacaktı. 28

find Kullanım: Str1.find(str2_ara) str nin found+1. karakterinden başlayarak, içerdeki string in ilk 3 karakterinin araştır. 29

rfind Kullanım: str1.rfind(str2_ara) 30

find_first_of, find_last_of Kullanım: string1.find_first_of( aranan karakter") string2.find_first_of( aranan karakter") 31

Kullanımı: find_first_not_of String1.find_first_not_of( olması gereken karakter dizisi ) 32

Kullanım: find_last_not_of string1.find_last_not_of(taranacak karakter dizisi) 33

substr Kullanımı: str1.strcopy(str1_basla,str1_adet) 34

Kullanım: compare str1.compare(str1bas,str1bit,str2,str2bas,str2bit) 35

36 string::npos string sınıfının bir grup arama işlemini yapan find() ve rfind() isimli üye fonksiyonları vardır. Bu fonksiyonlar yazı içerisinde arama yaparlar. Fonksiyonların parametresi string, const char* veya char türünden olabilmektedir. Üye fonksiyonlar yazının bulunduğu yerin index numarasıyla geri döner. rfind() aramayı sondan başa doğru yapar. Fonksiyonlar başarısızlık durumunda string sınıfı içerisindeki npos değerine geri dönerler.

ostringstream sınıfı ostringstream sınıfını kullanarak int türüne sahip değişkenlerin string tipi değişkenlere dönüştürülmesi 37

38 int2str & str2int

39