[c#] Waarom gaat dit in stappen van 2?

Pagina: 1
Acties:
  • 683 views

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Hallo,

Ik ben bezig met experimenteren met c# en ik heb nu deze code:
Afbeeldingslocatie: http://i.imgur.com/sQ46Rxy.png

Ik zou graag willen weten; waarom gaat het in stappen van 2?
Als ik start += 1 doe krijg ik ook gewoon stappen van 2.

[ Voor 7% gewijzigd door Verwijderd op 22-05-2014 18:00 ]


Acties:
  • 0 Henk 'm!

  • Cor453
  • Registratie: Mei 2011
  • Laatst online: 17-09 12:25
Waar doe je die .Read() voor? Wil je elke keer op enter drukken na een output?

Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Omdat Console.Read() 1 char leest en enter 2 chars is? (\r en \n)

Verder zien we graag gewoon code in code tags i.p.v. screenshots; output kun je tussen [cmd][/]-tags zetten:

C#:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
using System;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            int start = 0;
            while (true)
            {
                Console.WriteLine(start);
                start += 1;
                Console.Read();
            }
        }
    }
}


0

1
2

3
4

5
6

7
8


Dat maakt copy/pasten voor anderen (lees: ons :P ) makkelijker wanneer we je probleem proberen te reproduceren (wat nodig had kunnen zijn als 't niet zo obvious was geweest :+ )

[ Voor 120% gewijzigd door RobIII op 22-05-2014 18:07 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Acties:
  • 0 Henk 'm!

  • CrashOverDrive
  • Registratie: Augustus 2005
  • Laatst online: 00:06
Ik neem aan dat je iedere keer op "enter" drukt op verder te gaan?
Dan gaat je dus naar de volgende line, combineer dat met je WriteLine, dan krijg je dus een dubbele enter.

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ja, ik wil op enter drukken. Maar hoe kan ik er dan voor zorgen dat het met 1 stap gaat?

Acties:
  • 0 Henk 'm!

  • Cor453
  • Registratie: Mei 2011
  • Laatst online: 17-09 12:25
Nou volgens mij genoeg antwoorden die je in de richting van de oplossing wijzen ;)

Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
^ Wat hij zegt. Een klein beetje eigen moeite doen kan geen kwaad; als je even verder kijkt dan je neus lang is in de documentatie moet je hier prima zelf uit kunnen komen.

(Overigens had je dit probleem prima zelf kunnen oplossen (en de oorzaak ontdekken) als je even had gedebugged: Debuggen: Hoe doe ik dat?).

[ Voor 29% gewijzigd door RobIII op 22-05-2014 18:05 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Acties:
  • 0 Henk 'm!

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 09-09 13:58

NMe

Quia Ego Sic Dico.

Daos had nog een toevoeging voor de topicstarter:
Daos schreef op vrijdag 23 mei 2014 @ 19:24:
Ook wil ik nog een tip toevoegen. Ipv Console.Read kan hij beter Console.ReadKey gebruiken. In het object wat ReadKey teruggeeft zit een property Key die je kan bekijken en als je op enter drukt is dit ConsoleKey.Enter. (extra tip: schrijven op het scherm kan je onderdrukken door een argument aan ReadKey mee te geven)

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.

Pagina: 1

Dit topic is gesloten.