Haberler:

Foruma Resim Yükleme ve Boyut Sınırlaması ( ! )  https://bit.ly/2GMFb8H

Ana Menü

Aceminin C# sorulari

Başlatan z, 30 Mayıs 2012, 08:19:05

z

1) Form tipinde program yazarken sprintf tarzi C komutlari kullanabiliyormuyuz? Yoksa bu komutlar sadece konsol uygulamalarinda mi kullanilabiliyor?
Kullanimina ve include edilen dosyalarin tanimlarina ornek verirmisiniz?

2) Text box icine hex sayi girilsin. Bunu int degiskene atayan komut satirini yazarmisiniz?

3) Textbox icindeki verileri char elemanlarindan olusan bir array icine atan kodu yazarmisiniz?
Bana e^st de diyebilirsiniz.   www.cncdesigner.com

NecroCapo

2)  C# 'ı Linux ve diğer platformlarda kullandığım için, Microsoft'un .Net'i üzerinden değil de Mono üzerinden yazıyorum tüm kodlarımı C# ile, bu yüzden arayüz tarafı biraz farklı Microsoft'a göre, textbox'dan nasıl alınacağını ezbere bilmiyorum (büyük ihtimalle Text1.Text gibi birşeydir).  Ondan sonrası kolay. Mesela;

int degisken = System.Convert.ToInt32( "FF", 16);

NecroCapo

#2
3) char[] dizi = ("ahmet").ToCharArray();

ya da  char[] dizi = Text1.Text.ToCharArray();

1) sprintf 'e gerek kalmıyor C#'da.

Eğer amaç iki string i birleştirmekse;
        string degisken = "Ahmet";
        Text1.Text = "Merhaba" + degisken;

String ile ilgili bir format işlemi yapılacaksa;
   int sayi1 = 26;
        double sayi2 =  3.14;
        Text1.Text = String.Format( "En sevdiğim sayı {0} ve {1:f} dir.", sayi1, sayi2  );

Formatla ilgili karakterler için : http://www.csharpnedir.com/articles/read/?id=486&title=String.Format%20Fonksiyonu

arslan74

Merhaba,

Aradığını sorunları Microsoft tun MSDN sitesinde bulabilirsiniz.

http://msdn.microsoft.com/en-us/library/bb397679

Bu site .Net cilerin ana sayfası niteliğinde, takıldıklarında ilk önce bu siteyi ziyaret ederler.

dhan000

@NecroCapo hocam bu mono dediğiniz http://monodevelop.com oluyor değilmi... sormak istediğim windowsda  hazırlanan bir projeyi linuxta hiç bir değişiklik yapmadan çalıştırabiliyormuyuz veya tam tersi...
bunu sorma sebebim windowsla mac osx arasında gidip geliyorum herhangi birinde yazacağım kodları sorunsuzca diğerinde çalıştırabilecekmiyim...
selametle.

z

Evde yazmaya başladığım kodların bulunduğu klasörü  işyerindeki makinamda desktopa kopyaladım.

Ancak programı derlemeye kalktığımda evdeki makinadaki klasör yolunu aramaya kalkıyor. Bu vaziyette işyerinde programda bazı değişiklikler yaptım. Derlediğimde 19 tane hata veriyor sonra bir anda tüm hatalar yok oluyor ve 0 hataya dönüyor. Bazı satırlara breakpoint koyduğumda programı çalıştırdığımda breakpointler etkisiz hale geliyor.

Bu hatalardan nasıl kurtulabilirim? Evdeki çalışmaları işyerine nasıl sorunsuz taşırım?
Bana e^st de diyebilirsiniz.   www.cncdesigner.com

esensoy

ben bu konuda şöyle bir yontem kullanıyorum,
dropbox diye bir program var, web de ücretsiz 2 gb alan veriyor size,
Ben evde ki, işyerimde ki pc lerin hepsine bu programı kurdum,
programın klasörünü de tüm pclerde aynı olacak şekilde (D:\My Dropbox) ayarladım,
Program o klasöre dosya attığınızda anında web de ki alana da kaydediyor,
Sildiğinizde de web de ki alandan siliyor,
Diğer pcler açıldığında program otomatik çalşıyor ve web de ki alanın son güncel halini kendi yerel klasörüyle eşliyor.
Artık usb bellek bile taşıma gereğini yalnızca büyük boyutlu dosyalarda hissediyorum,
Evde akşam derlediğim ya da çalıştığım programı / dosyayı hiç taşımadan ertesi gün işyerimde aynen çalıştırabiliyorum.
En tehlikeli an "zafer" anıdır.

cicjoe

1) String.Format("{0} {1}....", a, b);
include islemi, referans ekleme ile yapiliyor. program derlenirken dahil edilen dll'ler parametre olarak gonderiliyor.
using kismi c++'daki using namespace kismina denk geliyor.

z

64 bytlık bir array tanımladım.

Amacım bu arrayden sıra ile byte değerleri okumak ve textbox da listelemek.

Basit örnek olması açısından arrayda herhangi bir yerdeki değer o yerin index numarası olsun.

Bu durumda text box da görmek istediğim görüntü aşağıdaki gibi olacak.

00: 00 01 02 03 04 05 06 07
08: 08 09 0A 0B 0C 0D 0E 0F
10: 10 11 12 13 14 15 16 17
....
....

şeklinde.

Verilerin hex olarak gösterildiğini ve en solda o satırın adresininde gösterildiğini gözönüne alarak bu kodlamayı yaparsanız benim için çok güzel bir örnek olacak.

Bana e^st de diyebilirsiniz.   www.cncdesigner.com

yamak

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace deneme1_2
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        int[] f = new int[64];

        private void button1_Click(object sender, EventArgs e)
        {
            foreach (int deger in f)
            {
                if (deger % 8 == 0)
                    richTextBox1.Text += "\n" + (deger.ToString("X2"))+":";
                richTextBox1.Text += " " + (deger.ToString("X2"));

            }
        }
        private void Form1_Load(object sender, EventArgs e)
        {
            for (int i = 0; i < 64; i++)
            {
                f[i] = i;
            }
        }
    }
}

Hocam aradığınız şey bu şekilde bir şey heralde. Ekran çıktısı şu:
Alıntı Yap00: 00 01 02 03 04 05 06 07
08: 08 09 0A 0B 0C 0D 0E 0F
10: 10 11 12 13 14 15 16 17
18: 18 19 1A 1B 1C 1D 1E 1F
20: 20 21 22 23 24 25 26 27
28: 28 29 2A 2B 2C 2D 2E 2F
30: 30 31 32 33 34 35 36 37
38: 38 39 3A 3B 3C 3D 3E 3F
butona basıldığında ekrana sayıları yazıyo.

z

#10
Soruyu soralı kaç dakika oldu tık yok kimsede? Delphide isteseydiniz hemen yazar yollardım size.


Edit: teşekkürler.

TextBox ı çok satırlı hale getirdim. Mesela 4.satıra bir text yerleştirmek istesem bunu nasıl yaparım?

TextBox1.Lines[4]=S gibi bir şeyler yapmak istedim ama yemedi.
Bana e^st de diyebilirsiniz.   www.cncdesigner.com

yamak


z

Yok mesajlar çakıştı.  Cevap için sağolasın. Richtext yerine textbox da bu iş nasıl yapılır. Daha doğrusu textboxda herhangi bir satıra string yazma işini merak ettim.

Bana e^st de diyebilirsiniz.   www.cncdesigner.com

yamak

Hocam forma bi textbox koyduğumuzda üstünde bi tane ok işareti var o işarete tıklayıp ordan multiline ı seçiyoruz sonra bir alt satıra geçmek için "\r\n" gönderiyoruz. Yani kodun yeni hali:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace deneme1_2
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        int[] f = new int[64];
        private void button1_Click(object sender, EventArgs e)
        {
            foreach (int deger in f)
            {
                if (deger % 8 == 0)
                    textBox1.Text += "\r\n" + (deger.ToString("X2"))+":";
                textBox1.Text += " " + (deger.ToString("X2"));

            }
        }
        private void Form1_Load(object sender, EventArgs e)
        {
            for (int i = 0; i < 64; i++)
            {
                f[i] = i;
            }
        }
    }
}

musty007

merhaba hocam basic ve pascal ve dbase programları biliyorum ama epeydir bişey yazmıyorum lakin geçenlerde bit pazarını gezerken 5 cd li BORLAND C++ BUİLDER 6 kodlu programı buldum winxp prf ve office 2003 kullanıyorum bu programı kursam zararı olurmu ve neler yapabilirim bu programla...öğrenmek istiyorum tabii sizin sitenizin sayesinde..çünkü borland programlarını seviyorum ve program yazmak istiyorum...ayrıca nesneye dayalı oyun programları yazmam yada üzerinde değişiklikler yapmak istiyorum...bu oyunların editörleri ile çok güzel haritalar hazırlayabiliyorum..ilginize şimdiden teşekkürler çpk iyi desen ve resimde yapıyorum..emekliyim...saygılar...