Permalänk

C# 'redefinition'

har deklarerat en pekare som skall användas för att anropa en funktion som skall läsa in en fil, problemet är bara att när jag ska anropa funktionen så får jag 'error: redefinition of 'data'', kod raden som fuckar upp ser ut som följande:

int person_count;
personal_data *data;
personal_data *data = import_data (&person_count, "./personal_data.dat");

Detta är en skoluppgift, så kan ej krångla mig runt det eller göra på ett annat sätt, någon som ser vad jag gör fel?

Permalänk
Medlem

variabeln data deklareras två gånger. Ta bort den övre av dem, så borde det funka bättre.

Skrivet av lesscool10:

har deklarerat en pekare som skall användas för att anropa en funktion som skall läsa in en fil, problemet är bara att när jag ska anropa funktionen så får jag 'error: redefinition of 'data'', kod raden som fuckar upp ser ut som följande:

int person_count;
personal_data *data;
personal_data *data = import_data (&person_count, "./personal_data.dat");

Detta är en skoluppgift, så kan ej krångla mig runt det eller göra på ett annat sätt, någon som ser vad jag gör fel?

Skickades från m.sweclockers.com

Visa signatur

as far as we can tell, the massacre went well...

Permalänk
Medlem

instämmer med ovanstående

Permalänk
Medlem

Lär man ut användning av pekare i C# i skolan? När jag pluggade fick vi först lära oss C och C++. När vi sen kom till C# och frågade efter pekare fick vi stränga order om att inte använda oss av såna tekniker i C#, utan bara jobba med de inbyggda funktionerna för referenser.

Permalänk
Medlem
Skrivet av Sebbepojken:

Lär man ut användning av pekare i C# i skolan? När jag pluggade fick vi först lära oss C och C++. När vi sen kom till C# och frågade efter pekare fick vi stränga order om att inte använda oss av såna tekniker i C#, utan bara jobba med de inbyggda funktionerna för referenser.

Att lära sig hur pekare fungerar är jättebra. Känns ju lite dumt att göra det med hjälp av C#, dock. Men om det är ett litet "kapitel" om pekare så kan det kanske vara smidigt att prova på det utan att byta miljö.

Visa signatur

DAN Cases A4-SFX | AMD Ryzen 7 9800X3D | Thermalright AXP90-X47 Full Copper |
INNO3D GeForce RTX 4070 Ti SUPER 16GB Twin X2 | Kingston 32GB (2x16GB) DDR5 6000MHz CL30 | ASUS ROG Strix B650E-I Gaming WIFI | Samsung 960 EVO 1TB | Corsair SF-600

Permalänk
Medlem
Skrivet av Nioreh83:

Att lära sig hur pekare fungerar är jättebra. Känns ju lite dumt att göra det med hjälp av C#, dock. Men om det är ett litet "kapitel" om pekare så kan det kanske vara smidigt att prova på det utan att byta miljö.

Att lära sig pekare i C# som nybörjare är ju sämsta man kan göra. Då fungerar inte GC alls om man inte kör garbage collection tracking på sina pekare. Och detta är precis vad referenser är i C#!

Lära sig pekare om man läser en kurs i digitalteknik ok. Men som nybörjare i programmering?? Idag????? Typ ett programmeringsjobb på tusen där man använder pekare i dagens läge...

Fast nu blev det Off topic. Sorry. DU hittar svar på din fråga redan i första kommentaren

Skickades från m.sweclockers.com

Visa signatur

Processor: Motorola 68000 | Klockfrekvens: 7,09 Mhz (PAL) | Minne: 256 kB ROM / 512 kB RAM | Bussbredd: 24 bit | Joystick: Tac2 | Operativsystem: Amiga OS 1.3

Permalänk
Medlem
Skrivet av talonmas:

Lära sig pekare om man läser en kurs i digitalteknik ok. Men som nybörjare i programmering?? Idag????? Typ ett programmeringsjobb på tusen där man använder pekare i dagens läge..
Skickades från m.sweclockers.com

Förstår vad du menar och håller delvis med. Å andra sidan så kan det vara väldigt nyttigt att lära sig. C/C++ är dessutom fortfarande ganska vanligt; där kommer man inte undan från pekare. Men även om man programmerar i ett språk där man inte behöver eller kan använda pekare , så som java/C#, så kan det vara nyttigt att ha förståelse för vad som sker bakom kulisserna.

Ett exempel kan vara förståelse kring pass-by-value/pass-by-reference. Om du skickar in en int i till en funktion f och ändrar värde på i inuti f så kommer i vara oförändrad i den anropande funktionen. Skickar du istället in ett objekt som har ett fält i och ändrar på fältet så kommer objektet att vara förändrat i den anropande funktionen.

Visa signatur

MSI z170a SLI-Plus - i7 6700K @ 4,6GHz - RTX 2060 - 32GB HyperX Fury DDR4 2666Mhz - Fractal Design arc midi r2 - Noctua UH-14S