Kezdőoldal » Számítástechnika » Programozás » Hogy kell használni a visual...

Hogy kell használni a visual studio code t?

Figyelt kérdés

A sima hello word programot akarom megcsinálni . Beírom ezeket #include <iostream>


int main() {

std::cout << "Hello World!";

return 0;

}


De semmi nem történik. Mit kéne csinálni hogy úgy működjön mint a parancssoros tanfolyamnál?



2021. dec. 7. 21:13
1 2 3
 11/25 anonim ***** válasza:

Az a baj, hogy te most úgy akarsz megtanulni programozni, hogy az alapokkal sem vagy tisztában. A parancssor kezelése, használata NEM programozási kérdés, hanem alap számítógép kezelési dolog. Az lehet, hogy manapság ezt nem tanítják az iskolában, de aki az átlagos felhasználói szintnél mélyebbre szeretni menni, annak bizony ismernie kell.

Tedd félre ezt a programozás tananyagot, és keress valami tutorialt, ahol elmagyarázzák a parancssort. De ha rám hallgatsz, akkor megveszed az "Egyszerűen DOS" című könyvet (antikvárban hozzádvágják kb. 500 ft-ért), és elolvasgatod. Ez egy elég régi könyv, én valamikor 18-20 évvel ezelőtt ebből tanultam meg a DOS használatát, a Windows-os paranccsor alapvető parancsai pedig azóta sem változtak. Nyugodtan vedd meg te is, hasznodra fog válni.

2021. dec. 9. 20:27
Hasznos számodra ez a válasz?
 12/25 anonim ***** válasza:
Ja, és szerintem ne erőltesd a VS Code-ot. Töltsd le inkább Dev-C++-t, a Code::Blocks-ot, vagy esetleg a Visual Studio-t, ezek kezdőbarátabbak. Persze, attól még a parancssoros fordítást is illik tudni.
2021. dec. 9. 20:30
Hasznos számodra ez a válasz?
 13/25 A kérdező kommentje:

Hát én igazából 4 napja vagyok "c++ programozó" eddig azt se tudtam eszik e vagy isszák.


De ezt a floppis A meghajtót akkor se értem miért baj? Nekem oda lett betelepítve a visual studio code és az összes mappa amivel dolgozok ott van direkt . És nem flopi hanem egy 500gigás ssd.


De nem ez a lényeg hanem az hogy tök mindegy visszaperrel vagy kacsacsőrrel választom el az elérési utat \ > mindig az említett hibát dobja ki . Beállítottam a középeurópai kódolást is .


Mondom jelenleg ott tartok hogy amit a visual studió core ban beírok kódokat az csinál egy cpp kiterjesztésű fájlt és ezt ha a Run build task ctrl shift B vel elmentem akkor létrehoz egy exe fájlt ugyan abba a mappába .


Ha az exére kattintok akkor bejön parancssorban és működik (lefut a program).

Akkor is működik ha kézzel írom be a parancssorba de ekkor tényleg a visszaperrel kell elválasztanom az utat ( nem értem hogy a csávó a filmben miért a kacsacsőrrel > csinálja ,annyira hülye én se vagyok bár 94 ben tanultuk alsóban az említett dos os könyvet tudom miről beszélsz).


Nem is ez a baj hanem hogy akkor miért nem csinálja meg a fordítást a g++ program.cpp beírással úgy ahogy a filmben tanítják ?


Másik kérdésem hogy hogy kell lefuttatni az exe t a visual studio felületén ? Nem akarok kilépkedni és egy parancssorba írogatni.


Szóval ezt nem értem hogy mit kell ott csinálni hogy lássam mit alkottam. Mint mondtam ott ha rámegyek az exe fájlra csak azt írja ki hogy nem lehet megjeleníteni a fájlt mert bináris adatokat tartalmaz vagy nem támogatott szövegkódolást használ.


De hol a nyavajába kell egyáltalán beállítani a visual stuióba a szövegkódolást mert ilyen menüt sehol nem találtam.


Meg mondjuk ha nem lenne jó a szövegkódolás akkor nem úgy lenne hogy parancssorban sem futna le?


Szóval én mindent visual studio code felületén akarok csinálni ez megoldható?

2021. dec. 9. 21:21
 14/25 anonim ***** válasza:

Jó, lépjünk túl az A:\ meghajtón, neked oda van felcsatolva az SSD, kész. Nem egy szokványos megoldás, de működik, mert igazából sehol nincs törvénybe iktatva, hogy az A:\ meghajtó csakis floppy lehet.


"tök mindegy visszaperrel vagy kacsacsőrrel választom el az elérési utat \ > mindig az említett hibát dobja ki "


Neked csak egyszerűen be kell lépned abba a mappába, ahol a .cpp fájl van, a "cd" paranccsal. A videón is így csinálja a csávó. A kacsacsaőr csak a prompt része - tudod, mi az a prompt? Tudod, mi az a relatív és abszolút útvonal? A csávó a videón abszolút útvonalon lép be a mappába ("cd C:\c++"), és onnantól a prompt átvált az adott útvonalra ("C:\c++>"), mert a prompt alapesetben azt a meghajtót és azt a mappát jelzi ki, ahol épp tartózkodsz (de ez változtatható).

Szóval az a lényeg, hogy van egy mappád, ahova be kell lépned. Ha jól látom, nálad ez a "A:\>programozás a slot" mappa.

Ide úgy lépsz be, hogy átlépsz az A:\ meghajtóra, majd utána a "programozás a slot" mappába:

A:\

cd "programozás a slot"


Egy fontos dolog: erősen ajánlott elkerülni a mappa - és fájlnevekben a szóközt és az ékezetet!! Ne használd őket!!

A Tab billentyűt nyomkodva segít a Windows belépni a mappába.


"Nem is ez a baj hanem hogy akkor miért nem csinálja meg a fordítást a g++ program.cpp beírással úgy ahogy a filmben tanítják ?"


Tudod, mire való a PATH környezeti változó? Amikor beírsz egy külső parancsot (mint amilyen a g++ is), akkor a Windows először a jelenlegi mappában kezdi el keresni a futtatható fájlt (g++.exe), ha ott nem találja, akkor a PATH változóban megadott mappákban. A videóban benne van az a rész, amikor beírja a PATH-ba a g++ elérési útvonalát, ezt megcsináltad? Ha ez megvan és jól is csináltad, akkor bármelyik mappában is állsz, a g++ parancsra elindul a g++, ha pedig azt írod be, hogy g++ program1.cpp, akkor le fogja fordítani a programod. A fontos az, hogy abban a mappában állva add ki a parancsot, ahol van a program1.cpp


Itt -> [link]

Megmutatja hogyan kell. Van a VS Code-ban terminál, abban lehet futtatni, de elméletileg van egy "Run code" nevű menüpont is, avagy használd a Ctrl+Alt+M kombinációt.

Ezt a videót nézd meg: [link]

A közepétől mutatja, hogyan kell a beépített terminálban lefuttatni a kódot (és mit kell kezdeni a read-only terminal üzenettel).

2021. dec. 10. 07:57
Hasznos számodra ez a válasz?
 15/25 anonim ***** válasza:

"Hát én igazából 4 napja vagyok "c++ programozó" eddig azt se tudtam eszik e vagy isszák."

Nem ezzel van baj, senki sem úgy kezdi, hogy mindent tud. Ez a hello world is teljesen jó kezdő program. A probléma ott van, hogy egyrészt a szükséges alapjaid (a számítógépről és a rendszerről) sincsenek meg, másrészt rossz tutorialt nézel, mert egy teljesen fapados módszert mutat be, ami kezdőként nem jó ötlet. Ahelyett, hogy parancssorban fordítgatod, inkább használj IDE-t. Már többen ajánlottuk a Code::Blocks nevűt.


"De ezt a floppis A meghajtót akkor se értem miért baj? És nem flopi hanem egy 500gigás ssd."

Ki a fene rakta neked A: meghajtóra az SSD-t? Bizonyos programok hibásan kezelhetik, mert hiába nincs floppy meghajtód, de az A: és B: annak volt fenttartva (ezért C: az első HDD) és nem jó ötlet oda bármit is tenni. Van még 23 másik betű...


"De nem ez a lényeg hanem az hogy tök mindegy visszaperrel vagy kacsacsőrrel választom el az elérési utat \ > mindig az említett hibát dobja ki . Beállítottam a középeurópai kódolást is ."

Mert a > jelet nem kell használni. A videóban sem használja, az csak a prompt része, azt nem neked kell beírni.

Viszont a > jel átirányítást jelent, azaz ha beírod, hogy A:\valami>akarmi akkor a rendszer ezt úgy értelmezi, hogy te le akarod futtatni a valami nevű programot és a kimenetét az akarmi nevű fileba akarod irányítani. Nem fog menni és te nem is ezt akarod.


"miért nem csinálja meg a fordítást a g++ program.cpp beírással úgy ahogy a filmben tanítják ?"

Azért, mert nincs benne a g++ az elérési útban (PATH), az aktuális könyvtárban meg nem találja. Erről tesz is említést a videóban a srác, hogy az elérési útvonalba be kell írni, hogy működjön.


"Másik kérdésem hogy hogy kell lefuttatni az exe t a visual studio felületén ? Nem akarok kilépkedni és egy parancssorba írogatni."

Ezért használj IDE-t, pl Code::Blocks-t. Ott futtatásnál rögtön elindítja, nem neked kell parancssorba gépelned.


"ha rámegyek az exe fájlra csak azt írja ki hogy nem lehet megjeleníteni a fájlt mert bináris adatokat tartalmaz"

Mert bináris adatokat tartalmaz - futtatható programot - amit NEM a VS-ben kell megjelenítened, hanem ahogy eddig is tetted, lefuttatnod az exe-t.

2021. dec. 10. 09:22
Hasznos számodra ez a válasz?
 16/25 A kérdező kommentje:

"a PATH-ba a g++ elérési útvonalát, ezt megcsináltad?"


Persze hogy megcsináltam és még a felhasználói változóknál is betettem azt semmi. Akkor az a rohadt A meghajtó lesz a ludas de már le is xarom mert megcsináltam visual kode ban azt a kiegészítőt amit mondtatok és ott lehet szimulálni egy ablakon belül a futtatást.



Mostmár valami olyan weboldal kéne ami el is magyarázza hogy mit jelentenek ezek a kódok mert oké hogy átküldtétek azokat a példafeladatokat


#include <iostream>

using namespace std;


int main() {

int num1, num2, num3;


cout << "Enter a number: ";


// for single input

cin >> num1;



cout << "Enter 2 numbers:" << endl;


// for multiple inputs

cin >> num2 >> num3;



cout << "Sum = " << (num1 + num2 + num3);


return 0;

}


Csak nincs hozzá leírás , nem igazán értem hogy miért úgy kezdődik hogy int main . Az int az nem csak számokat tartalmazhat? a wikipédia szerint INT -2147483648..2147483647


Meg ott van a végén hogy return 0 az nem azt jelenti hogy ne lépj ki ? De amikor rákattintok az exe re és úgy futtatom parancssorba akkor nem dobja ki a három szám eredményét hanem egyből eltűnik az ablak.


Meg ha az std::cin.get(); írom utána ami a filmben van akkor is kidob és nem mutatja az eredményt.


A visual studioban vagy parancssoros exe indításnál jó. De én rákattintásos módon is jól akarom hogy működjön.

2021. dec. 10. 11:01
 17/25 anonim ***** válasza:

"Csak nincs hozzá leírás , nem igazán értem hogy miért úgy kezdődik hogy int main . Az int az nem csak számokat tartalmazhat?"

De, az int csak számokat tartalmazhat. Egész számokat, hogy pontosak legyünk, ugye integer, mint egész. A main az program fő függvénye és kötelezően van egy int visszatérési értéke.


"Meg ott van a végén hogy return 0 az nem azt jelenti hogy ne lépj ki ?"

Nem, nem azt jelenti. Azt jelenti, hogy 0 a függvényed (mivel a main-ről van szó, így az egész program) visszatérési értéke, jelen esetben a 0 azt jelenti, hogy minden rendben, nincs hiba. Ha parancssoros programot írsz, akkor ezzel a visszatérési értékkel lehet jelezni, ha valami hiba történt.


"De amikor rákattintok az exe re és úgy futtatom parancssorba akkor nem dobja ki a három szám eredményét hanem egyből eltűnik az ablak."

De kiírja, csak a Windows egyből bezárja a konzol ablakot. Ezért vagy eleve konzolból futtasd, vagy használj IDE-t.


"A visual studioban vagy parancssoros exe indításnál jó. De én rákattintásos módon is jól akarom hogy működjön."

Jól működik "rákattintásos módon" is. A program lefut, kiírja az eredményt, majd bezárja a konzol ablakot. Ha nem akarod, hogy rögtön bezáródjon, akkor betehetsz egy várakozást, pl. billentyűleütésre.


Szerintem amúgy neked nagyon az alapoktól kellene kezdeni, először azt megérteni, hogy mik a változók, hogy épül fel egy program, mik az alapvető utasítások, stb. Ez a videó nem a legjobb tananyag.

2021. dec. 10. 11:19
Hasznos számodra ez a válasz?
 18/25 anonim ***** válasza:

Az a videótanfolyam nem magyarázza el ezeket?

C++-hoz van egy rakat tutorial, pdf, videó, könyv, magyarul is, keress egyet (csak ne Bjarne Stroustrup-tól A C++ Programozási nyelvet, mert az inkább referenciakönyv, nem kezdőknek való!).


"Az int az nem csak számokat tartalmazhat?"


De, igen. Minden programnak van egy visszatérési értéke, ami egy szám, ez jelzi az operációs rendszer számára a program lefutását. Általában a 0 azt jelenti, hogy a program rendben lefutott. Az int main() azt jelenti, hogy a programod egy int-et fog visszaadni, a return 0; pedig azt, hogy 0-ás kódot fog visszaadni a rendszer számára (tehát hogy minden rendben, a program normál módon futott le, lépett ki). A 0-tól eltérő visszatérési értékek általában valamely hibára utalnak (de nem feltétlenül és nem minden esetben!).


"De amikor rákattintok az exe re és úgy futtatom parancssorba akkor nem dobja ki a három szám eredményét hanem egyből eltűnik az ablak."


Próbáld meg a cin.get() helyett azt, hogy system("pause"); vagy getchar();.

2021. dec. 10. 11:23
Hasznos számodra ez a válasz?
 19/25 A kérdező kommentje:
A system pause működik ,a többi nem :)
2021. dec. 10. 22:22
 20/25 A kérdező kommentje:

Azt megtudnátok mondani hogy lehet egyáltalán azt hogy a tizedes vesszőt tizedes pontnak értelmezze a konzol? Mivel az a nyomorék numpad nem pontot üt hanem vesszőt ,de az meg a konzolban nem tizedes pontot jelent hanem vesszőt vagyis használhatatlan mint számológép.


Azt akarom hogy összeadni lehessen float számokat konzolban.

2022. jan. 19. 21:26
1 2 3

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!