Ik heb een randomly generated ints (1,0) csv file size: dMaxXY*dMaxXY. In deze file zitten "turtles" units die over deze "omgeving "bewegen. Wat compleet mis gaat is het lezen uit de CSV file. Ik wil de value waar de turtle zit gebruiken om de turtle te laten checken naar eten op de bijbehorende locatie 1 of 0. en afhankelijk van die value laten eten( = write 0) of niets laten doen. Turtle's hebben een double x,y value, die ik heb gecast naar een int om te werken i.c.m de omgeving die in de csv staat. (1e deel). Echter bij myfile.getline() gaat het compleet mis, en ik weet even niet meer wat. Bij het reporten van de "line" in de cout geeft hij rare values aan.
Mijn aanpak is de complete omgeving wil ik in de string laden (lekker inefficiënt, weet ik maar ik heb opgegeven om de omgeving per line te laden). Eigenlijk het enige wat ik wil weten is wat er mis gaat met mijn getline-functie. En misschien een suggestie voor een alternatieve oplossing, iets met vectoren, want daar heb ik wat meer ervaring mee.
Het onderstaande is een deel van mijn code:
Alvast bedankt!
Is het handig als ik de complete source post? Er staan overal comments bij, maar toch denk ik dat de leesbaarheid niet erg hoog is.
Mijn aanpak is de complete omgeving wil ik in de string laden (lekker inefficiënt, weet ik maar ik heb opgegeven om de omgeving per line te laden). Eigenlijk het enige wat ik wil weten is wat er mis gaat met mijn getline-functie. En misschien een suggestie voor een alternatieve oplossing, iets met vectoren, want daar heb ik wat meer ervaring mee.
Het onderstaande is een deel van mijn code:
C++:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
| //eat; *(if at food, food = 0 and + counter for (int idx = 0; idx != iAmountOfTurtle; ++idx) { char line[99999]; // reports turtle loc, and checks for food int y =(int)turtleYCor.at(idx); int x =(int)turtleXCor.at(idx); myfile.getline (line, (dMaxXY*dMaxXY),','); cout <<"turtle number: "<< idx <<" food at turtle loc: " << line[y] << " xcor: " << x + 1 <<" ycor: "<< y + 1 << endl; // 1 = food, 0 = no_food if (line[y + 1] = 1) { // todo add: write at vectorlocation [idx] location a "0" a.k.a. eat for turtle # idx turtleFoodEaten[idx] += 1; } //else } |
Alvast bedankt!
Is het handig als ik de complete source post? Er staan overal comments bij, maar toch denk ik dat de leesbaarheid niet erg hoog is.

[ Voor 4% gewijzigd door BtM909 op 08-02-2012 12:13 ]
There are 10 types of people in this world. Those who understand binary, and another 9 who don't give a s**t.