Kezdőoldal » Számítástechnika » Programozás » C, C# vagy Python?

C, C# vagy Python?

Figyelt kérdés

Sziasztok, Egy ideje C# ban "programozok" tetszik is meg minden de inkább majd Operációs rendszereket és játékokat szeretnék készíteni. A kérdésem az lenne hogy bár tudom millió + 1 ilyen kérdés van de pont ilyen nincs, hogy melyiket ajánlanátok a fentebb említett célokra?

A C#-t azért nem szeretném folytatni mivel az csak windows-ra van és én inkább a Linux -ot szeretem használni!

Válaszokat köszönöm! 14/F



2017. márc. 11. 13:58
1 2 3 4 5
 21/47 anonim ***** válasza:

#include <locale.h>


int main() {

.. setlocale(LC_ALL, "hun");

.. return 0;

}

2017. márc. 12. 18:45
Hasznos számodra ez a válasz?
 22/47 A kérdező kommentje:

Köszönöm szépen :D

Illetve azt sem találtam sehol sem hogy a szöveg színét meg lehet-e változtatni? Ha igen hogy?

2017. márc. 12. 19:46
 23/47 anonim ***** válasza:

"Hagyd már abba a baromságaidat. A C soha nem volt a c++ részhalmaza"

Mit nem tudsz megcsinálni C++-ban ugyanazzal a szintaxissal, amit C-ben megtudsz? Melyik C-s függvényt nem tudod meghívni?

2017. márc. 12. 20:12
Hasznos számodra ez a válasz?
 24/47 anonim ***** válasza:

"mert a kontrollerek, processzorok zöméhez elég a C, annyira, hogy sok esetben nincs is c++ fordító."

Fordítva ülsz a lovon. C-ben programozni lassú és egyáltalán nem biztonságos C++-hoz képest. Ha bizonyos területen még nem tértek át, az csak azért van mert spórolnak a fejlesztésen, amivel hosszú távon csak önmagukat szívatják.

2017. márc. 12. 20:19
Hasznos számodra ez a válasz?
 25/47 A kérdező kommentje:
Erre voltam kíváncsi: [link]
2017. márc. 12. 20:31
 26/47 anonim ***** válasza:

"Mit nem tudsz megcsinálni C++-ban ugyanazzal a szintaxissal, amit C-ben megtudsz?"


Szépen rákeresel és elolvasod. Lesz mit.


Az meg szintén nem igényel kommentet, hogy a C-ben való fejlesztés lassú és biztonságtalan lenne. A hardverközeli programozás nyelve az assembly mellett a C, évek évtizedek alatt kialakított, tökéletesre fejlesztett librarykkal. Ezt nyilván nem fogják a szemétbe dobni, csak azért mert van egy "olyan C" ami az OOP-t hozzáadja a lehetőségekhez, éppen azt, amire ezen a területen amúgy 99 %-ban semmi szükség.

A sok-sok fejlesztő a világban hadd tudja már jobban nálad, hogy mit csinál, mivel és miért.

2017. márc. 12. 20:32
Hasznos számodra ez a válasz?
 27/47 anonim ***** válasza:

Mielőtt tovább szeretnéd folytatni ezt a szövegszínezős tervedet, szerintem jobb, ha megbeszéljük, mi is az a konzol.


Egy terminál (vagy konzol) gyakorlatilag 3 különálló fájlnak vehető, mégpedig a:

- standard bemenetből (standard input, stdin),

- standard kimenetből (standard output, stdout),

- standard hiba (standard error, stderr)

fájlokból áll. Ezt a három fájlt látod egyszerre azon a szép nagy fekete képernyőn.


A standard kimeneten a felhasználó számára hasznos dolgokat írhatsz ki. A printf, puts, putchar stb. függvények és eljárások mind-mind ezt a fájlt írják.


Ha a felhasználónak szeretnél lehetőséget adni arra, hogy valamit beírjon, legyen az egy szám vagy egy szöveg, akkor az mindig a standard bemenetre fog kerülni. Ezt a fájlt olvasod, amikor a gets-t, scanf-et, getchar-t használod. (De a gets-t én a helyedben nem használnám, mivel rendkívül nagy biztonsági kockázatot jelent. Ha érdekel miért, akkor szívesen mutatok egy példát.)


Valamint van a standard hiba. Ez hasonlít a standard kimenetre, tehát erre a programodban írhatsz ki dolgokat, de ezt - mily meglepő - a hibaüzenetek számára tartják fenn. Ez utóbbira írás nem annyira egyszerű, mivel itt nem úszod meg a fájlkezelő függvényeket és eljárásokat, de ezt úgyis megmutatom neked.


Ezekhez a fájlokhoz szerencsére közvetlenül is hozzáférhetsz. Miután behúztad az stdio.h-t, akkor rögtön megjelenik három azonosító: stdin, stdout, stderr. Ha megnézed, milyen típusúak, rájöhetsz, hogy FILE*, tehát ezeket már azonnal használhatod is a fájlkezelő rutinokkal.


#include <stdio.h>

#include <locale.h>


int main() {

.. setlocale(LC_ALL, "hun");

.. int Num;

.. printf("Adj meg egy számot: ");


.. if (scanf("%d", &Num) != 1) { //a scanf eredménye azt jelenti, hogy hány adatot sikerült beolvasni

.. .. fputs("Nem számot adtál meg!", stderr);

.. .. return 1; //Jelezzük, hogy a program sikertelenül ért véget, és a hibakód 1 lesz.

.. }


.. printf("A(z) %d számot adtad meg.\n", Num);

.. return 0; //Ha a hibakód 0, az azt jelenti, hogy a programod sikeresen ért véget.

}


Erről a 3 fájlról azt kell tudni, hogy ezek átirányíthatóak. Ha azt szeretnéd, hogy a program kimenete képernyőre kiírás helyett fájlba tárolódjon, megteheted így:

program.exe > kimenet.txt

Hasonlóan a bemenettel:

program.exe < bemenet.txt

A hiba átirányítása már egy kicsit érdekesebb:

program.exe 2> hiba.txt (itt figyelni kell arra, hogy a 2 és a > közt nem lehet szóköz)

Olyat is csinálhatsz, hogy a hibát a standard kimenetre irányítod rá:

program.exe 2>&1 (itt az 1 jelenti az stdout-ot, míg a 2 az stderr-t)


Ha a konzolon színezgetni akarsz, addig semmi gond nincs, amíg azt ki nem találod, hogy írsz egy grafikus felületet, ami lényegében annyit csinál, hogy a konzolos programjaidat futtatja. Mert amikor fel kellene dolgozni a konzolos programod kimenetét, nagyon csúnyán keresztül fogja húzni a számításaidat a sok vezérlőkarakter.

2017. márc. 12. 20:49
Hasznos számodra ez a válasz?
 28/47 anonim ***** válasza:
Te mindenhova behányod ezt a sok szart?
2017. márc. 12. 20:56
Hasznos számodra ez a válasz?
 29/47 anonim ***** válasza:
Véleményem szerint a kérdező előrébb lesz vele, mint azzal a sok felesleges vitával, mint például a "C az márpedig/márpedig nem a C++ részhalmaza".
2017. márc. 12. 20:58
Hasznos számodra ez a válasz?
 30/47 anonim ***** válasza:

"return 0; //Ha a hibakód 0, az azt jelenti, hogy a programod sikeresen ért véget."


Hibakód. LOL

2017. márc. 12. 21:13
Hasznos számodra ez a válasz?
1 2 3 4 5

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!