Şimdi Ara

c# x++ ve ++x arasındakı fark ?

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
5
Cevap
0
Favori
1.667
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • using System;

    namespace ConsoleApplication43
    {
    class Program
    {
    static void Main(string[] args)
    {

    int y = 0;

    for (int i = 1; i < 3; ++i)
    {
    Console.WriteLine(y++);

    }
    }
    }
    }


    ________________________________________________________________
    çıktı :
    0
    1


    using System;

    namespace ConsoleApplication43
    {
    class Program
    {
    static void Main(string[] args)
    {

    int y = 0;

    for (int i = 1; i < 3; ++i)
    {
    Console.WriteLine(++y);

    }
    }
    }
    }


    ________________________________________________________________________________________________
    çıktı :
    1
    2
    _________________________________________________

    tamam buraya kadar anladım ama for dongusunde neden bunlar olmuyor ornegın:



    using System;

    namespace ConsoleApplication43
    {
    class Program
    {
    static void Main(string[] args)
    {

    int y = 0;

    for (int i = 1; i < 3; ++i)
    {
    Console.WriteLine(y++);

    }
    }
    }
    }

    burada i 1 den başlayor 1 fdongu bıttten sonra i yi 1 artırıp yerıne 2 koyuyor bu dongu de bıttıkten sonra i yi 3 yapıp donguden cıkıyor

    ama burada :


    using System;

    namespace ConsoleApplication43
    {
    class Program
    {
    static void Main(string[] args)
    {

    int y = 0;

    for (int i = 1; i < 3; i++)
    {
    Console.WriteLine(y++);

    }
    }
    }
    }


    şöyle olması gerekmez mı : i birken dongu bir kere tamamladın daha sonra i bir artırlıp geriye artrılmıs halının bır eksı konuldu yanı i suan 2 ama yerine 1 konuldu tekarrar dongu dondu i 2di bir artırıldı 3 oldu ama geriye 2 bıraktı dongu bir kere daha dondu i 3 tü bir artırıldı 4 oldu ama gerıye 3 bıraktı bu kosul saglanmadıgı ıcın donguden cıkıldı yanı burada bır tane daha fazla dongu olması gerekmez mı ? ya da nereyı yanlıs analamısım yardım ?



    < Bu mesaj bu kişi tarafından değiştirildi deniz caliskan -- 21 Nisan 2017; 18:22:13 >







  • for (int i = 1; i < 3; ++i)
    {
    Console.WriteLine(y++);
    }

    bu kodu

    int i = 1;

    while(i<3) {
    Console.WriteLine(y++);
    i++; // veya ++i;
    }

    şeklinde düşünün. for içerisinde sadece döngü arttırması olarak ++i veya i++ kullanmanız arasında bir fark yoktur.
  • şimdi anlamış bulunuyorum



     
    int i = 1;
    int y = 0;

    while (i < 3)
    {
    Console.WriteLine(i);
    Console.WriteLine(y++);
    i++;
    Console.WriteLine(i);

    }

    bu ifade ile
     
    int i = 1;
    int y = 0;

    while (i < 3)
    {
    Console.WriteLine(i);
    Console.WriteLine(y++);

    Console.WriteLine(i);

    }

    bu ifade arasıdank ifarkı anlarsanız benım analmamıs oldugum yerı anlamıs olursunuz ben de farkı sımdı anladım hemen anlatayım yani i++ bulundugu satırda kendısı bir artıyor ama artırdıgı sayının 1 eksiğini yazdıyor bir daha ki satırda artık i'nin bir artırılmıs seklı işlemeye başlıyor, şuan ayrıntılı anlatmadım ama bunu gelecekte okuyup anlamamış ve ya analamayacak olan varsa :D buradan ve ya özelden mesaj atsınlar ayrıntıloı bir şekilde anlatırım ozaman yani hitiyac oldugunda anlatırım şimdi kendimi boşa yormaya gerek yok :D hadi iyi günler




  • i++ yazarsanız, i'nin değerini kullanır ve ardından 1 arttırır.

    ++i yazarsanız, i'yi 1 arttırır ondan sonra kullanır.

    < Bu ileti mobil sürüm kullanılarak atıldı >
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.