Temel c++ dersleri

Bu konuyu okuyanlar

crazy engineer

Öğrenci
Katılım
4 Şubat 2020
Mesajlar
7
Reaksiyon puanı
6
Puanları
3
Yaş
33
Merhaba arkadaşlar sizlerle birlikte C++temellerine ineceğiz dersler bu konu altından olucak dileyen takip edip katkıda bulunabilir.

Öncelikle C++ nedir?

C++ (Türkçe okunuşu: ce artı artı, İngilizce okunuşu: si plas plas), Bell Laboratuvarlarından Bjarne Stroustrup tarafından 1979 yılından itibaren geliştirilmeye başlanmış, C'yi kapsayan ve çok paradigmalı, yaygın olarak kullanılan, genel amaçlı bir programlama dilidir. İlk olarak C With Classes (Sınıflarla C) olarak adlandırılmış, 1983 yılında ismi C++[1] olarak değiştirilmiştir.
Genel olarak her C programı aynı zamanda bir C++ programıdır, ancak her C++ programı bir C programı değildir. Bu durumun bazı istisnaları mevcuttur. C++'ı C'den ayıran özellikler C++'ın nesne paradigması kullanılarak programlamaya olanak tanıyan özelliklerdir. Sınıflar sayesinde yeni veri türleri yaratılabilir veya varolan türlerden yenileri türetilebilir. Ayrıca çokbiçimlilik sayesinde bir sınıf tanımıyla yazılmış kod, o sınıf türünden türetilmiş yeni sınıflarla da çalışabilir.
Vikipedi

C++'ı yapay zeka, masaüstü uygulama, oyun vb birçok uygulamada kullanabilirsiniz.

İlk örnek Merhaba Dünya
#include <iostream>

using namespace std;

int main()
{
cout << "Hello World" << endl;

return 0;
}
Mesaj otomatik birleştirildi:

IDE nedir?
Tümleşik geliştirme ortamı
Vikipedi, özgür ansiklopedi


Gezinti kısmına atlaArama kısmına atla

Anjuta, GNOME ortamı için bir C ve C++ TGO'su
Tümleşik geliştirme ortamı (İngilizce: Integrated development environment, kısaca IDE), bilgisayar programcılarının hızlı ve rahat bir şekilde yazılım geliştirebilmesini amaçlayan, geliştirme sürecini organize edebilen birçok araç ile birlikte geliştirme sürecinin verimli kullanılmasına katkıda bulunan araçların tamamını içerisinde barındıran bir yazılım türüdür.
Tümleşik geliştirme ortamlarında olması gerekli en temel özellikler:
  • Programlama diline göre sözdizimi renklendirmesi yapabilen kod yazım editörü.
  • Kod dosyalarının hiyerarşik olarak görülebilmesi amacıyla hazırlanmış gerçek zamanlı bir dizelge.
  • Tümleşik bir derleyici, yorumlayıcı ve hata ayıklayıcı.
  • Yazılımın derlenmesi, bağlanması, çalışmaya tümüyle hazır hale gelmesi ve daha birçok ek işi otomatik olarak yapabilmek amacıyla küçük inşa araçları.
En bilinen tümleşik geliştirme ortamlarına örnek olarak Eclipse, Microsoft Visual Studio, Code::Blocks, Dev-C++, Anjuta, KDevelop, NetBeans gibi ortamlar verilebilir.

C++ için codeblocks, devc++ vb ücretsiz programları kullanabilirsiniz.
Kod yazacak bir editör için atom editor, notepad++ ve visaul studio code vb uygulamaları kullanabilirsiniz.
Mesaj otomatik birleştirildi:

#include ile C++ için kütüphane bilgilerini tanımlar.
<iostream> kütüphanesi temel işlemler için gereklidir.
using namespace std; standart kitaplıktaki nesneler ve değişkenler için isimler kullanabileceğimiz anlamına gelir.
int main (). Buna fonksiyon denir. Kıvırcık parantezleri {} içindeki herhangi bir kod yürütülür.
main (), program çalışmaya başladığı yerdir. // ile başlayıp ve satırın sonunda biter.
cout ("see-out" olarak telaffuz edilir) metin çıktısı alıp yazdırmak için kullanılan bir nesnedir. Örneğimizde "Merhaba Dünya" çıktısını verecektir.
return 0 ana işlevi programı sonlandırır.
Mesaj otomatik birleştirildi:

C++ Yorum
Programda tek ve çok satırlı yorumda bulunabilirsininiz.

//tek satırlı yorum


/*
yorumunuzu yazınız
*/

Burada yorum yapabilirsiniz derleyici bu kısımları dikkate almaz bu size program yazarken kolaylık sağlar.
Mesaj otomatik birleştirildi:

C++ Anahtar Kelimeler
Identifiers (Tanımlayıcılar)

Geçerli bir tanımlayıcı, bir veya daha fazla harf, rakam veya alt çizgi karakterinden oluşan bir dizidir (_). Boşluklar, noktalama işaretleri ve simgeler bir tanımlayıcının parçası olamaz. Ayrıca, tanımlayıcılar her zaman bir harfle başlamalıdır. Ayrıca altı çizili bir karakterle (_) başlayabilirler, ancak bu tür tanımlayıcıların çoğu durumda derleyiciye özgü anahtar kelimeler veya harici tanımlayıcılar için ve aynı zamanda iki ardışık alt çizgi karakteri içeren tanımlayıcılar için ayrıldığı kabul edilir. Hiçbir durumda bir rakamla başlayamazlar.

C ++ işlemleri ve veri açıklamalarını tanımlamak için bir dizi anahtar kelime kullanır; bu nedenle, bir programcı tarafından oluşturulan tanımlayıcılar bu anahtar kelimelerle eşleşemez. Programcı tarafından oluşturulan tanımlayıcılar için kullanılamayan standart ayrılmış anahtar kelimeler şunlardır:
C ++, tanımlayıcılarında @, % vb işaretlere izin vermez. C ++, büyük küçük harf duyarlıdır. sdn1 ile Sdni1, SDN1 tanımlamaları aynı sayılmaz.
C ++ dili "büyük / küçük harfe duyarlı" bir dildir. Bu, büyük harflerle yazılmış bir tanımlayıcının aynı ada sahip başka bir kimliğe eşdeğer olmadığı, ancak küçük harflerle yazılmış olduğu anlamına gelir. Böylece, örneğin, RESULT değişkeni sonuç değişkeni veya Sonuç değişkeni ile aynı değildir. Bunlar, üç farklı değişkeni tanımlayan üç farklı tanımlayıcıdır.


alignas, alignof, and, and_eq, asm, auto, bitand, bitor, bool, break, case, catch, char, char16_t, char32_t, class, compl, const, constexpr, const_cast, continue, decltype, default, delete, do, double, dynamic_cast, else, enum, explicit, export, extern, false, float, for, friend, goto, if, inline, int, long, mutable, namespace, new, noexcept, not, not_eq, nullptr, operator, or, or_eq, private, protected, public, register, reinterpret_cast, return, short, signed, sizeof, static, static_assert, static_cast, struct, switch, template, this, thread_local, throw, true, try, typedef, typeid, typename, union, unsigned, using, virtual, void, volatile, wchar_t, while, xor, xor_eq
Mesaj otomatik birleştirildi:

Fundamental data types ( Temel veri türleri )
Değişkenlerin değerleri bilgisayar belleğinde belirtilmeyen bir yerde sıfırlar ve değişkenler olarak saklanır. Programımız bir değişkenin depolandığı yeri tam olarak bilmek zorunda değildir; sadece ismiyle anlatabilir. Programın bilmesi gereken şey, değişkende depolanan veri türüdür. Basit bir tamsayıyı saklamak, bir harfi veya büyük bir kayan nokta sayısını saklamakla aynı şey değildir; hepsi sıfırlar ve birler kullanılarak temsil edilmelerine rağmen, aynı şekilde yorumlanmazlar ve birçok durumda aynı miktarda belleği işgal etmezler.

Temel veri türleri, çoğu sistem tarafından yerel olarak desteklenen temel depolama birimlerini temsil eden dil tarafından doğrudan uygulanan temel türlerdir. Bunlar çoğunlukla şu şekilde sınıflandırılabilir:


Karakter türleri: 'A' veya '$' gibi tek bir karakteri temsil edebilirler. En temel tür, bir baytlık karakter olan char'dır. Daha geniş karakterler için başka türler de sağlanır.
Sayısal tamsayı türleri: 7 veya 1024 gibi bir tam sayı değeri saklayabilirler. Çeşitli boyutlarda bulunurlar ve negatif değerleri destekleyip desteklemediklerine bağlı olarak imzalanabilir veya imzalanmamış olabilirler.
Kayan nokta türleri: Üç kayan nokta türünden hangisine kullanıldığına bağlı olarak, farklı hassasiyet düzeyleriyle 3.14 veya 0.01 gibi gerçek değerleri temsil edebilirler.
Boole türü: C ++ 'da bool olarak bilinen boolean türü, true veya false olmak üzere iki durumdan yalnızca birini temsil edebilir.
TipBellek boyutuDeğer aralığı
char1byte-127 to 127 or 0 to 255
unsigned char1byte0 to 255
signed char1byte-127 to 127
int4bytes-2147483648 to 2147483647
unsigned int4bytes0 to 4294967295
signed int4bytes-2147483648 to 2147483647
short int2bytes-32768 to 32767
unsigned short int2bytes0 to 65,535
signed short int2bytes-32768 to 32767
long int8bytes-2,147,483,648 to 2,147,483,647
signed long int8bytessame as long int
unsigned long int8bytes0 to 4,294,967,295
long long int8bytes-(2^63) to (2^63)-1
unsigned long long int8bytes0 to 18,446,744,073,709,551,615
float4bytes
double8bytes
long double12bytes
wchar_t2 or 4 bytes1 geniş karakter




Character types



char
char16_t
char32_t
wchar_t


Integer types (signed)



signed char
signed short int
signed int
signed long int
signed long long int


Integer types (unsigned)
unsigned char
unsigned short int
unsigned int
unsigned long int
unsigned long long int


Floating-point types


float


double
long double


Boolean type
bool
Void type
void
Null pointer
decltype(nullptr)
Mesaj otomatik birleştirildi:

Belirli tamsayı türlerinin adları imzalı ve int bileşenleri olmadan kısaltılabilir - türü tanımlamak için yalnızca italik olmayan kısım gerekir, italik olan kısım isteğe bağlıdır. Yani, imzalı kısa int imzalı kısa, kısa int veya sadece kısa olarak kısaltılabilir; hepsi aynı temel türü tanımlar. Yukarıdaki grupların her birinde, türler arasındaki fark sadece boyutlarıdır (yani, bellekte ne kadar yer aldıkları): her gruptaki ilk tür en küçüktür ve sonuncusu en büyüğüdür, her tür en az aynı grupta öncekinden daha büyük. Bunun dışında bir gruptaki türler aynı özelliklere sahiptir. Yukarıdaki panelde, karakterden (tam olarak bir bayt büyüklüğüne sahip) farklı olan temel türlerin hiçbirinin standart bir boyutu (ancak en fazla minimum boyut) belirtilmediğini unutmayın. Bu nedenle, tür tam olarak bu minimum boyut gerekli değildir (ve çoğu durumda zorunlu değildir). Bu, bu türlerin belirlenmemiş bir boyutta olduğu anlamına gelmez, ancak tüm derleyiciler ve makineler arasında standart bir boyut olmadığı anlamına gelir; her derleyici uygulaması, programın çalışacağı mimariye en uygun olan bu türler için boyutları belirtebilir. Türler için bu oldukça genel boyut spesifikasyonu, C ++ diline hem mevcut hem de gelecekteki her türlü platformda en iyi şekilde çalışacak şekilde uyarlanması için çok fazla esneklik sağlar. Yukarıdaki tip boyutları bit cinsinden ifade edilmiştir; bir tipin bitleri ne kadar fazlaysa, o kadar farklı değerler temsil edebilir, ancak aynı zamanda bellekte daha fazla yer kaplar:
Mesaj otomatik birleştirildi:

SboyutDeğerNot
8-bit256= 28
16-bit65 536= 216
32-bit4 294 967 296= 232 (~4 billion)
64-bit18 446 744 073 709 551 616= 264 (~18 billion billion)
Mesaj otomatik birleştirildi:

Tam sayı tipleri için, daha temsil edilebilir değerlere sahip olmak, temsil edebilecekleri değer aralığının daha büyük olduğu anlamına gelir; örneğin, 16 bit işaretsiz bir tam sayı, 0 ile 65535 aralığındaki 65536 ayrı değeri temsil edebilirken, imzalı karşılığı çoğu durumda -32768 ile 32767 arasındaki değerleri temsil edebilir. işaret için 16 bitten birinin kullanılması nedeniyle pozitif değerler işaretli türlerde işaretsiz türlere göre yarıya indirilir; bu, menzil içinde nispeten mütevazı bir farktır ve nadiren yalnızca temsil edebilecekleri pozitif değerlerin aralığına dayanarak işaretsiz tiplerin kullanımını haklı çıkarır.

Kayan nokta türleri için, boyut, anlamlı ve üsleri için daha fazla veya daha az bite sahip olarak hassasiyetlerini etkiler.

Türün boyutu veya hassasiyeti endişe verici değilse, char, int ve double karakterleri, sırasıyla karakterleri, tam sayıları ve kayan nokta değerlerini temsil edecek şekilde seçilir. İlgili gruplarındaki diğer tipler sadece çok özel durumlarda kullanılır.

Belirli bir sistemdeki temel türlerin özellikleri ve derleyici uygulaması numeric_limits sınıfları kullanılarak elde edilebilir ( Standart başlık <limits>). Herhangi bir nedenle, belirli boyut türleri gerekiyorsa, kitaplık <cstdint> üstbilgisinde belirli sabit boyutlu tür diğer adlarını tanımlar.

Yukarıda açıklanan türler (karakterler, tamsayılar, kayan nokta ve boole) topluca aritmetik tipler olarak bilinir. Ancak iki ek temel tür vardır: tür eksikliğini tanımlayan void; ve özel bir işaretçi türü olan nullptr türü. Her iki tip de işaretçiler hakkında gelecek bölümde daha ayrıntılı olarak tartışılacaktır.

C ++, yukarıda tartışılan temel türleri temel alan çok çeşitli türleri destekler; bu diğer türler bileşik veri türleri olarak bilinir ve C ++ dilinin ana güçlü yönlerinden biridir. Gelecek bölümlerde de daha ayrıntılı olarak göreceğiz.
Mesaj otomatik birleştirildi:

Declaration of variables (Değişkenlerin beyanı)
C ++, güçlü bir şekilde yazılmış bir dildir ve her değişkenin ilk kullanımdan önce kendi türüyle bildirilmesini gerektirir. Bu, derleyiciye değişken için bellekte ayrılacak boyutu ve değerini nasıl yorumlayacağını bildirir. C ++ 'da yeni bir değişken bildirmek için sözdizimi basittir: sadece türü ve ardından değişken adını (yani tanımlayıcı) yazarız.
int a;
float mynumber;

Bunlar iki geçerli değişken beyanıdır. Birincisi, a tanımlayıcısıyla int türünde bir değişkeni bildirir. İkincisi, mynumber tanımlayıcısına sahip bir değişken şamandıra türünü bildirir. Bildirildikten sonra, a ve mynumber değişkenleri programdaki kapsamlarının geri kalanında kullanılabilir.
Aynı türden birden fazla değişken bildirilirse, bunların tümü tanımlayıcılarını virgülle ayırarak tek bir deyimde bildirilebilir. Örneğin:
int a, b, c;

Bu, tümü int türünde üç değişken (a, b ve c) bildirir ve aşağıdakilerle tamamen aynı anlama gelir:


int a;
int b;
int c;

Bir programda hangi değişken bildirimlerin iş başında göründüğünü görmek için, bu bölümün başında önerilen zihinsel belleğinizle ilgili örneğin tüm C ++ koduna bakalım:

// operating with variables

#include <iostream>
using namespace std;

int main ()
{
// declaring variables:
int a, b;
int result;

// process:
a = 5;
b = 2;
a = a + 1;
result = a - b;

// print out the result:
cout << result;

// terminate the program:
return 0;
}
 
Son düzenleme:

ByEmil

Asistan
Katılım
25 Kasım 2018
Mesajlar
301
Reaksiyon puanı
191
Puanları
43
ellerine sağlık, ben bu kadar uzun şeyleri okuyamıyorum başında bırakıyorum :D
 
Üst