PDA

Επιστροφή στο Forum : ερωτήσεις γιa c# kai coding γενικά



finos
26-01-16, 19:18
θέλω να φτιάξω κάτι παρόμοιο με αυτό που έκανε ο φιλαρας εδώ https://www.youtube.com/watch?v=dULnFK6R6XY
όταν πάω να βάλω κουμπάκια με βγάζει αυτό το πράμα :62212στα αριστερά είναι το βίντεο και στα δεξιά το δικο μου

πως θα μπω στον designer της εφαρμογης;

finos
27-01-16, 07:46
Γιατί ρε παιδιά κανεις

nestoras
27-01-16, 10:16
Γιατί ρε παιδιά κανεις

Ανάθεμα κι αν κατάλαβε κανείς τι ζητάς....

finos
27-01-16, 13:51
Ανάθεμα κι αν κατάλαβε κανείς τι ζητάς....
το διορθοσα

Panoss
27-01-16, 14:33
το διορθοσα
Ωραία, τώρα το καταλαβαίνουμε όλοι.




















62223

street
27-01-16, 14:34
το διορθοσα
ποιο ? .... βαγγελη ...

πως θα μπω στον designer της εφαρμογης;
πατας f5 ....:biggrin: δηλαδη το οτι ειδες το βιντεο και τα λινκ απο κατω και ας πουμε το καταλαβες ? υπαρχει υποπτο λινκ απο κατω και στο εχει ετοιμο ...

finos
27-01-16, 14:57
ποιο ? .... βαγγελη ...

πατας f5 ....:biggrin: δηλαδη το οτι ειδες το βιντεο και τα λινκ απο κατω και ας πουμε το καταλαβες ? υπαρχει υποπτο λινκ απο κατω και στο εχει ετοιμο ...
but only the code

street
27-01-16, 15:13
but only the code
ε ναι τι ?

info@kalarakis.com
27-01-16, 20:04
αν κατάλαβα κάτι από το πρώτο πόστ σου είναι με πιο τρόπο θα προγραμματίσεις το rasbperry με το visual studio
Για να κάνεις οτι και ο τύπος αυτός θέλει πρώτα ένα υπολογιστή που να τρέχει windows 10 pro και να έχει το visual studio 2016 OXI παλαιότερο.
Μετά θα βάλεις αναζήτηση στο δίκτυο microsoft + rasberry pi2 Θα σε πάει σε μια σελίδα που δίνει οδηγίες πως θα τα συνδέσεις όλα αυτά. Μέχρι εδώ είναι τα εύκολα.
Δυστυχώς δεν έχει γραφικό περιβάλλον τύπου visual studio. Πρέπει να γράφεις κώδικα για το που θα τοποθετηθούν τα πχ button listbox κτλ
μπορεί και αν έχει περιβάλλον τύπου VB6 και να μη κατάλαβα εγώ πως το κάνει αν ξέρει κάποιος ή έχει κάποιο οδηγό (που να μη έχει κρυφά σημεία) ας τον δημοσιεύσει να το δούμε και εμείς.

Από τα παραδείγματα που είδα στη ms είναι τύπου console.

Panoss
27-01-16, 20:18
Μιχάλη ξέρεις να διαβάζεις fino;:001_huh:
Μήπως αποκρυπτογραφείς και Γραμμική Β';

finos
25-04-16, 17:02
Λιπών γραφώ μια εφαρμογή σε c#.net με την οποία θα επικοινωνεί το Arduino κι θα μου δείχνει στην οθόνη την τάση ,την ένταση και τα w . έχω κάνει :

private void button7_Click(object sender, EventArgs e)
{
while (true)
{
label4.Text = serialPort1.ReadLine();
}

}

64313



Αλλά όταν μπαίνει το στο while (true)
το πρόγραμμα φριζάρει
έχετε καμία ιδέα ;
αυτό που σκέπτομαι είναι :10φωρες /sec να ανανεώνει την τιμή στην οθόνη

Fire Doger
25-04-16, 17:26
Έχει γραφικό σχεδιασμό (https://msdn.microsoft.com/en-us/library/hh921077.aspx), το πόσο αξίζει δεν γνωρίζω, σαν τις μικρές διορθώσεις κατευθείαν στον κώδικα πιστεύω δεν έχει αν κάνεις κάτι περίπλοκο.
Το Rasberry + C# + xml ...... καλή τύχη :001_rolleyes:
Εμένα μου πήρε μήνες να μάθω να κάνω μέτριο σχέδιο σε xml στο android.

Hint: Μάθε timer και ρύθμισε ticks. Έχεις λειτουργικό και βάζεις while(true)??? Τα πάντα θα είναι σε σχέση με UI και οι μεγάλες λειτουργίες στο παρασκήνιο.

finos
25-04-16, 17:58
δεν το θελω για το rpi 2

SeAfasia
25-04-16, 18:03
Fino,
έμαθες και C# και όχι C++;

Fire Doger
25-04-16, 18:52
δεν το θελω για το rpi 2
Όπως και στα ηλεκτρονικά που όταν ξεκινάς αναβοσβήνεις ένα λεντ με 100 τρόπους έτσι και στον προγραμματισμό γενικότερα ξεκινάς με κάτι απλό, πατάς ένα κουμπί και σου βγάζει ένα μήνυμα (όπως όταν πατάς ένα κουμπί και ανάβει το λεντ). Σε λειτουργικά επειδή συνήθως χρειάζεσαι ένα ολόκληρο πρότζεκτ χάνεσαι πολύ εύκολα. Ή θα μάθεις όλη την δομή ενός προτζεκτ C# ή θα βρεις έτοιμα παραδείγματα κώδικα και θα προσπαθείς να κάνεις μικρές αλλαγές για να μάθεις "βλέποντας και κάνοντας" αλλά χρειάζεται να έχεις και μία Χ γνώση σε project structure για να καταλαβαίνεις τι κάνεις, όχι να αλλάζεις πράγματα στην τύχη.
Εσύ πάλι ξεκίνησες χωρίς να έχεις ιδέα από C, C# να επικοινωνείς με σειριακή..... και το πρόβλημα ήταν το κουμπί.....

finos
25-04-16, 19:19
1 πραμα θελω να μαθω αυτη την στηγμη : στο scrach (https://scratch.mit.edu/) που κανουμε στο σχολειο υπαρχει μια εντολη επανελβε (π.χ) 10 και μετα οι εντολες που βαλαμε
αυτο θελω να κανω κι εγω !
δλδ να μου πειτε την εντολη που θα αντικαταστισω το true

Fire Doger
25-04-16, 19:32
1 πραμα θελω να μαθω αυτη την στηγμη : στο scrach (https://scratch.mit.edu/) που κανουμε στο σχολειο υπαρχει μια εντολη επανελβε (π.χ) 10 και μετα οι εντολες που βαλαμε
αυτο θελω να κανω κι εγω !
δλδ να μου πειτε την εντολη που θα αντικαταστισω το true
:001_huh::confused1::001_unsure::thinking:

for(byte i=0; i<10; i++){
dosomething();
}

Άσχετο αλλά μπορείς να βάλεις και αυτό αφού ξέρεις κώδικα lego http://blog.ardublock.com/

finos
26-04-16, 10:20
Fino,
έμαθες και C# και όχι C++;
mου ειναι πιο ευκολο να μαθω την c# γιατι μιαζει με την wiring (arduino )


for(byte i=0; i<10; i++){
dosomething();
}

δηλαδή :

for(byte i=0; i<10; i++)
{
label4.Text = serialPort1.ReadLine();
}

αυτο να βαλω αντι για το while true ;

nkarama
26-04-16, 13:59
mου ειναι πιο ευκολο να μαθω την c# γιατι μιαζει με την wiring (arduino )



Μήπως κάνεις κάποιο λάθος? λέω μήπως?

finos
26-04-16, 14:09
λιπων απ το καλοκαιρι ασχλουμε με το arduino
και προσφατα ειδα καπια βιντεο με την c# (https://www.youtube.com/playlist?list=PLEbaEyM-xt9mVQEAXGlRRmbO2Qp_oqF-n) και με την c++ κι μου καθετε καλυτερα στο ματι η c#
και θελω να μου πεις κατι αυτο ειναι πιο φιλικο για καπιον που ερχετε απο την γλωσσα του arduino

this->components = (gcnew System::ComponentModel::Container()); this->serialPort1 = (gcnew System::IO::Ports::SerialPort(this->components));
this->button1 = (gcnew System::Windows::Forms::Button());
this->label2 = (gcnew System::Windows::Forms::Label());
this->timer1 = (gcnew System::Windows::Forms::Timer(this->components));
this->label3 = (gcnew System::Windows::Forms::Label());
this->label4 = (gcnew System::Windows::Forms::Label());
this->button2 = (gcnew System::Windows::Forms::Button());
this->label5 = (gcnew System::Windows::Forms::Label());
this->listBox1 = (gcnew System::Windows::Forms::ListBox());
this->comboBox1 = (gcnew System::Windows::Forms::ComboBox());
this->label1 = (gcnew System::Windows::Forms::Label());
this->SuspendLayout();

ή αυτο :

progressBar2.Value = 100; trackBar1.Value = 100;
label5.Text = "100";
serialPort1.WriteLine("fan");
serialPort1.WriteLine("100");


// the setup function runs once when you press reset or power the board
void setup() {
// initialize digital pin 13 as an output.
pinMode(13, OUTPUT);
}

// the loop function runs over and over again forever
void loop() {
digitalWrite(13, HIGH); // turn the LED on (HIGH is the voltage level)
delay(1000); // wait for a second
digitalWrite(13, LOW); // turn the LED off by making the voltage LOW
delay(1000); // wait for a second
}

nkarama
26-04-16, 14:23
Κατ αρχάς σχολίασα μόνο την φράση σου περι Wiring. Η Wiring είναι C++ τελευταία φορά που κοίταξα...

Φίλε μου, γλώσσα "Arduino" δεν υπάρχει.

Υπάρχει η C++ η οποία με διάφορες επιπλέον κλάσεις (libraries) κρύβει την πολύπλοκότητα του HArdware και με συγκεκριμένους compilation κανόνες φτιάχνει ένα binary πρόγραμμα κατάλληλο για τους επεξεργαστές που υποστηρίζονται απο την πλατφόρμα του Arduino (σχεδόν όλη η σειρά ATMega της Atmel)

Παρόλα αυτά, δεν θα διαφωνήσω μαζί σου. Η C# φαίνετε αρκετά ευκολότερη στην ανάγνωση απο την C++, μοίαζει μάλιστα καταπληκτικά με Java. Βέβαια τα δύο παραπάνω κομμάτια κώδικα που έβαλες δεν έχουν καμμία σχέση μεταξύ τους μιας και το πρώτο "φτιάχνει" την φόρμα ενώ το δεύτερο προυποθέτει ότι η φόρμα υπάρχει (και πίστεψέ με εκεί που φτιάχνετε η φόρμα υπάρχει ανάλογη πολυπλοκότητα)
Και μην ξεχνάς ότι C# σε οτιδήποτε άλλο εκτός απο Windows, ξέχνα την....


εν ολίγης, έχεις μπερδέψει λίγο την βούρτσα με την ....
Πετάγεσε απο το ένα στο άλλο χωρίς σκοπό και αιτία... παρακολουθώ λίγο καιρό το φόρουμ και έχω δει και άλλες συζητήσεις που έχουν γίνει με εσένα και είναι πάντα ένα ευχάριστο διάλειμα!

finos
26-04-16, 14:31
το ξέρω ότι είναι διαφορετικοί κώδικες , ειναι διαφορετικά project .
δεν θυμόμουν πια γλωσσα τρέχει το Arduino

finos
26-04-16, 21:16
δύστυχος το προγραμματίσω φρειζάρει χειρότερα :saad::angry:
σκέφτομαι να το κανω με το mouse_Hover αντί για mouse_click καλη ιδέα ;
θελετε να βαλω ολον τον κωδικα ;

SeAfasia
26-04-16, 21:37
αραμαικά ή αρχαία Χαλδειική διάλεκτο...

finos
26-04-16, 23:54
Γιατί είναι σε αραμαϊκά ;
Από το word τα περασα

Fire Doger
27-04-16, 13:39
Έχεις στίσει data recieve handler?
Δουλεύεις με Try-Catch?
Είναι λάθος να δουλεύεις με Polling.

http://stackoverflow.com/questions/16215741/c-sharp-read-only-serial-port-when-data-comes
Ότι θέλεις να κάνεις πρώτα θα ψάχνεις στο StackOverflow, έχει τα πάντα.

finos
27-04-16, 14:14
Ναι το ξέρω με έχει βοηθήσει παρα πολύ

finos
29-04-16, 11:56
ΕΤΙΜΟΟΟΟΟΟΟΟΟ!
απλως εβαλα εναν timer κι εκανα :

private void timer1_Tick(object sender, EventArgs e)
{
label4.Text = serialPort1.ReadLine();
}

και μια εροτησουλα πως θα φτιαξω μια αντηστηχη εφαρμογη για ubuntu ?

finos
11-07-16, 18:28
εχω ενα μικρο προβλιματατακι εχω γραψει το προγραμα γ (https://github.com/finos2/Computer-Controlled-Lab-Power-Supply-)ια να ελενχω το psu απο το pc αλα δεν δουλεβει
ενω το arduino λαμβανει τισ εντολες (switch case 5 λεντακια κι τα αναβοσβινω με τα κουμπια )
εχω βαλει μια label κι κανω το εξις
label3.Text = serialPort1.ReadLine();
οταν συνδεομαι στο arduino και δεν ανανεωνει (μεσω ενος timer ) κι μου φριζαρει το προγραμα
private void timer1_Tick(object sender, EventArgs e)
{
label3.Text = serialPort1.ReadLine();



}
τι πρεπι να κανω;για να παιξει
The thread 0x2cb4 has exited with code 0 (0x0). αυτο μου βγαζει

finos
11-07-16, 21:50
κανεις ;
καταλαβατε ή να τα ξανα πω;

SProg
11-07-16, 22:24
Στελνεις μεσω σειριακης με το Arduino και θελεις να το εμφανιζεις σε ενα .Text σε C#;

Απο το Arduino και στελνεις δεδομενα και δεχεσαι;

Δεν καταλαβα ποιος Freeza-αρει απο τα 2.Εαν εννοεις το C# προγραμμα τοτε θα βγαλουμε ακρη.

finos
11-07-16, 22:57
ναι το c# προγραμα

finos
24-07-16, 17:27
Πως θα κάνω ενα text box να δεχετε μονο αριθμούς και μονο συγκεκριμένη ς μορφής πχ 21.1
Δλδ δυο ψηφία πριν το κόμα και 1 μετα ;
Ευχάριστω

finos
24-07-16, 20:33
καταλαβατε τι θελω να κανω

SeAfasia
24-07-16, 21:26
καταλαβατε τι θελω να κανω

να σου πω τι είδους αριθμός είναι ο 21.1 στον προγραμματισμό;

finos
24-07-16, 22:48
Όχι απλώς θέλω εν textbox να δεχετε μονο αριθμούς αυτής της μορφής

picdev
24-07-16, 22:50
Δες τι ιδιότητες έχει το text box

Στάλθηκε από το 2014813 μου χρησιμοποιώντας Tapatalk

finos
24-07-16, 23:38
http://www.c-sharpcorner.com/uploadfile/mahesh/maskedtextbox-in-C-Sharp/ νατοοοοο
Με custom mask ωπος ακριβώς το θέλω oh yes

xmaze
25-07-16, 13:15
εχει πλάκα που γραφεις μια πρόταση και πρέπει να καταλάβουμε, γενικά επειδή η C# είναι για μένα κόκκινο πανί, εφόσον υπαρχουν τόσες άλλες γλώσσες.

Ειχα κάνει παλιότερα ενα προτζεκτ με C++/QT και C για τον AT90CAN128 οπου επικοινονούσαν μέσω UART και διάβαζα CAN stacks απο αυτοκίνητα.

Αν δεν βαριέσαι κάτσε και δές τον κώδικα πως το είχα κάνει. https://github.com/ntosis/openCANalysis

βεβαια δεν ξέρω αν έχει παρόμοιες συναρτήσεις η C# με το QT framework.

finos
26-07-16, 21:28
θελω να κανω μια ερωτηση εχω βαλει menu strip κι θαελω μεσα απο αυτο να μανατζαρω τοις com ports65995oπως βλεπετε κατω δεξια εχω ενα panel οπου ριθμιζω com port baudrate και συνδεομαι
εγω θελω να τα βαλω ολλα στο menustrip καπως ετσι 65996 (εκει στο "1" θα ειναι τα com ports )
αλλα εχω μια υποψια ... τα κοματια μεσα στο menuστριπ ειναι κατι σαν κουμπια αρα δεν θα μπωρουν να ειναι combo boxes σωστα
ο κωδiκας ειναι στο github (v2) (https://github.com/finos2)

Fire Doger
27-07-16, 18:32
https://msdn.microsoft.com/en-us/library/ms404318(v=vs.110).aspx

Δεν το δοκίμασα αλλά νομίζω είναι αυτό που θες.
Επίσης μπορείς να βάλεις εικόνες δίπλα από κάθε επιλογή και αν είναι επιλεγμένη ή όχι η εικόνα θα αντιστοιχεί σε tick ή full transparency.

Άσχετο, αν δεις το psu του Μάνου επέλεξε να κάνει αυτό που κάνεις με labview που είναι για αυτήν την δουλειά. Εσύ γιατί παλεύεις με C?

finos
27-07-16, 18:39
γιατι
α με βολευει
β δεν ξερω labview
γ δεν βρισκω το labview στο pirate
δ ειναι πανακριβο ενω η c# τσαμπα

Fire Doger
27-07-16, 18:53
α) οκ
β) Ενώ C# πετάς:lool: Κανείς δεν γεννήθηκε ξέροντας κάτι
γ) kick is back
δ) no logic σε σχέση με το γ

Με ότι θες κάντο απλώς για σένα το λέω είναι καλύτερο το labview για ότι μπλιμπλίκια κάνεις στο μέλλον να τα έχεις όλα μαζί απ' το να γράφεις εφαρμογές που θέλουν και σεβαστό χρόνο ανάπτυξης.

Και είναι καλύτερο να μάθεις το industry standard για πολλούς λόγους.
ΠΧ το steam ζητάει Altium, με eagle δεν πας πουθενά. Το ίδιο συμβαίνει και με όλα τα προγράμματα solidworks-autocad vs όλα τα άλλα κλπ κλπ
Ίσως πρέπει να ξανασκεφτείς τα προγράμματα που μαθαίνεις μήπως καταναλώνεις τζάμπα χρόνο

https://i.imgur.com/xkDyqhh.png

finos
27-07-16, 20:07
να σου πω την αλιθεια ειχα το visual studio στο pc γιατι ηθελα (:001_rolleyes:εγω το ψονιο )να γραψω uwp εφαρμογη και λεω δεν γραφω μια uwp για να εποικινωνει το arduino το πισι τελικα εκανα μια χ86 και μετα ειδα του μανου κι τοτε καταλαβα οτι το labview δεν ειναι για ...(νομιζα οτι ητανε τιπου excel )

finos
28-07-16, 00:09
https://www.youtube.com/watch?v=t4pnjGdExBE
προσπαθω να κανω αυτο εδω αλλα δεν τα καταφερνω εκει που πανω να κανω πχ : textbox t=new texbox(); δεν βρισκω το textbox που ειναι στην form2 απο την form 1
help
@fire doger
τρ το καταλαβα για το γ) kick is back μπα καλυτερα c αν κανω κατι αλο κι θελω lab view τα προχωρισω

Fire Doger
28-07-16, 02:10
https://www.youtube.com/watch?v=t4pnjGdExBE
προσπαθω να κανω αυτο εδω αλλα δεν τα καταφερνω εκει που πανω να κανω πχ : textbox t=new texbox(); δεν βρισκω το textbox που ειναι στην form2 απο την form 1
help
@fire doger
τρ το καταλαβα για το γ) kick is back μπα καλυτερα c αν κανω κατι αλο κι θελω lab view τα προχωρισω

Δεν έκανες τα textbox public ή έχεις ορθογραφικό στο form2. (ή όπως αλλιώς το βάφτισες)
Και είναι και φοβερό παράδειγμα..... Dialog result χρειάζεται, και μπορείς να έχεις και απλώς 2 public μεταβλητές στην form2 και να διαβάζεις εκείνες αντί να διαβάζεις τα textbox δεν είμαι σίγουρος ποιο είναι καλύτερο.

Από default είναι private ότι δεν ορίζεις.

finos
18-02-17, 23:04
γεια σας
μετα απο ωρες ψαξιμο διχως κανενα αποτελεσμα αποφασησα να ρωτισω
πρωσπαθω εδω και λιγο καιρο να κανω το arduino του τροφοδοτικου να συνδέεται με την εφαρμογη που εγραψα για το pc για αρχη σκεφτηκα να το κανω με map() αλλα δεν δουλεψε μετα σκευτικα οτι το arduino θα στελνει "volt"|"amp"|"vset"|"aset"
και σε καθε | η c# να κοβει αυτο το κοματι και να το βαζει σε νεα μεταβλητή .
με βαση αυτο
https://www.youtube.com/watch?v=2Rani1W-sPQ&amp;t=102s&amp;index=64&amp;list=WL
θεωρητικώς θα μπορουσα να το κανω αλλα οταν βαζω input την σηριακη και οχι textbox και μετα πως τα βαζω σε διαφορετικες μεταβλιτες ? :head:


char thespilt = Convert.ToChar("|");//set the spilt point
var _in = Console.ReadLine();//read the console
string[] words = _in.Split(thespilt);//splitit!
foreach (string word in words)
{
Console.WriteLine(word);
}


Thread.Sleep(10000);

oκωδικας για αρχη διαβαζει την comand line

Fire Doger
18-02-17, 23:27
Που χάθηκες εσύ????????:confused1:

'Αρχικά δες εδώ (https://github.com/FireDeveloper/FireFlow-Oven) που το δούλεψα 1 μήνα και την έχω περιποιημένη την επικοινωνία με αναζήτηση com, disconnect listeners, friendly names (είτε έχει drivers είτε είναι απλό ftdi).
GPL το έχω πάρε κάντο ότι θες....


1. char poo = '|'; //" " == string, ' ' == char
2. Αν σου δουλεύει η split (βάλε break point στην επόμενη εντολή, πάνε τον κέρσορα πάνω στην words και δες τα δεδομένα του πίνακα) τι την θες την foreach?
Άλλο arduino που κάνεις debug με σειριακή άλλο σε C#, εδώ δουλεύεις με break points, μπορείς να αλλάξεις τις τιμές και τον κώδικα ενώ τρέχει όποια στιγμή θες.

Επίσης το arduino θα στέλνει "volt|amp|vset|aset" 1 string με 4 τιμές. "volt" "|" "amp" "|" "vset" "|" "aset" αυτό είναι 7 string και δεν θα δουλέψει η split γιατί τρέχει ο κώδικας 7 φορές 1 για κάθε string ξεχωριστά.

finos
19-02-17, 09:30
Καλημέρα
Και πάλι δεν καταλαβαίνω πως θα τα χωρισω σε διαφορετικές μεταβλητές.

Fire Doger
19-02-17, 17:14
Τι εννοείς?
Πχ το arduino στέλνει καθαρή πληροφορία "5|6|7" (χαρακτήρες αρχής, τέλους, checksum κλπ τα παραβλέπουμε)

str = "5|6|7";
string[] tokens = str.Split('|');
Το αποτέλεσμα θα είναι ο tokens ένας πίνακας 1x3 με 3 string, θέση [0] το "5", [1] το "6", [2] το "7"

Και άμα θέλεις να είναι αριθμοί τους κάνεις parse 1-1
http://stackoverflow.com/questions/5365566/parse-string-to-float-number-c-sharp

finos
19-02-17, 18:36
και μετα θελω να ειναι σε 3 αλες μεταβλητες οπου μετα θα γραφετε σε label και σε exel για log
δεν μπωρω καταλαβω πως θα τα βαλω σε string

Fire Doger
19-02-17, 18:46
και μετα θελω να ειναι σε 3 αλες μεταβλητες οπου μετα θα γραφετε σε label και σε exel για log
δεν μπωρω καταλαβω πως θα τα βαλω σε string
Γιατί? Βόλτες σ' αρέσει να τα κάνεις?
label1.Text = tokens[0]; //"5"
label2.Text = tokens[1]; //"6"
label2.Text = tokens[2]; //"7"

Αντί για label μπορείς να έχεις string.
Το ίδιο και όταν τα βάζεις στο excel.
Από thread νομίζω βγάζει error γιατί δεν έχει πρόσβαση και τα κάνεις public τα label ή static function στον κώδικα της φόρμας αν θυμάμαι καλά...

finos
19-02-17, 19:02
δεν δουλευω threading "παιζω " με timers για αυτον ακριβως τον λογο
...τhread νομίζω βγάζει error γιατί δεν έχει πρόσβαση και τα κάνεις public τα label ...
ευχαριστω πολυ

finos
03-03-17, 14:45
μια γρήγορη ερώτηση το string[] αποθηκεύει το input : τεστ 1 σαν "τεστ" "1" στις αντιστοιχες θέσεις [1] kai [2]? ή σαν "t" "e" ?
ή το τελευτεο το κανει το char[]?

picdev
03-03-17, 14:47
Φίνο βλέπω ακόμα δεν έχεις καταλάβει τι είναι το ASCII τι είναι το string και τι είναι το char , είναι τρόποι αναπαράστασης ,τα δεδομένα δεν αλλάζουν .
Καλύτερα κάτσε και διάβασε.
Εγώ θα ξεκινούσα με το να καταλάβω τι είναι το ASCII

Fire Doger
05-03-17, 17:01
Βαγγέλη είναι ένα κομμάτι που θέλει καλή κατανόηση.
Άλλο το string, άλλο το []
To string δεν είναι απλώς μια μεταβλητή αλλά μια κλάση η οποία διαχειρίζεται char array. Σε ένα array προκαθορίζεις το μέγεθός του και είναι πάντα στην ίδια θέση στην Ram.
Ένα string αποθηκεύετε στο heap. Αν πχ έχεις ένα string 10 χαρακτήρων η κλάση θα ζητήσει ένα μέρος που να χωράει 10 χαρακτήρες και θα το βάλει. Αν μετά προσθέσεις και άλλους χαρακτήρες θα ρωτήσει αν μπορεί να μεγαλώσει το μέγεθος του string, αν μπορεί έχει καλώς, αν δεν μπορεί τότε θα ζητήσει νέα θέση που να χωράει 11 χαρακτήρες και ότι υπάρχει στους 10 θα το μεταφέρει στην νέα θέση με αποτέλεσμα να έχεις μια τρύπα 10 byte στο heap. Σε OS δεν είναι κάτι τρομερό αλλά σε μΕ είναι μεγάλο πρόβλημα.

string[] δεν μπορείς να κάνεις πολύ απλά γιατί δεν μπορείς να καπαρώσεις θέσεις μνήμης γιατί κάθε string έχει δυναμικό μέγεθος.
Αυτό που μπορείς να κάνεις στην C# είναι List<string>.

Δες και εδώ για να μάθεις περισσότερα για το arduino https://hackingmajenkoblog.wordpress.com/2016/02/04/the-evils-of-arduino-strings/

finos
05-03-17, 20:18
α δεν σας ειπα .....το καταφερα

char thespilt = '|';//the spilt point var _in = Console.ReadLine();//read the console
string[] words = _in.Split(thespilt);//splitit!
var word1 = Convert.ToDecimal(words[0]);
Console.WriteLine(word1);
var int1 = Convert.ToDecimal(words[1]);
Debug.WriteLine(int1);
Thread.Sleep(10000);
Thread.Sleep(1000);

σε θεοριτικο επιπεδο δουλεει
η εισοδος θα ειναι "0,00|0,00|00,0|0,00" (ν|Α|νset|aset) εχει προβλεφθεί μοναχα για τα 2 πρωτα

finos
09-03-17, 19:01
μπορει μια βηβλιοθηκη c++ να παιξει στην c#?

Fire Doger
09-03-17, 19:59
Δεν έχω ιδέα. Τι βιβλιοθήκη?

Panoss
09-03-17, 20:43
Βάγγο το λογικό είναι να μη μπορεί.
Όμως, μπορεί να υπάρχει αντίστοιχη για c#.
Για ποια βιβλιοθήκη ρωτάς;

finos
09-03-17, 22:09
Για το nvidia api είναι c++κι θέλω να το ενσωματωσω σε ενα project σαν το open hardware monitor (c# αλλά δεν καταλαβαίνω πως θα περνώ πληροφορίες απο την gpu μου