Új hozzászólás Aktív témák
-
kampi_
csendes tag
válasz
sghc_toma
#1069
üzenetére
Hi!
Köszönöm a sok segítséget, de ehhez én még kevés vagyok
Próbálkoztam a WaitForMultipleObjects , de az nem igazán jött össze. Úgyhogy maradtam a te megoldásodnál. Ami egyszerűbbnek tűnik, csak az a bajom, hogy nem tudom hogyan kell HANDLE-t kérni. Én így próbáltam:HANDLE handle;
handle = OpenProcess(READ_CONTROL, false, proc_data[1].proc_id);
De ha itt kiiratom a handle-t akkor csak valamilyen egyre növekvő számokat kapok vissza. Tudnál ebben segíteni?
Előre is köszönöm!
kampi
-
skoda12
aktív tag
válasz
sghc_toma
#1023
üzenetére
Anno C++ volt az első programnyelv, amit megtanultam, utána C. Akkor úgy éreztem gyorsabban eljutottam volna ugyanoda, ha C lett volna a kezdőnyelv, ezért ajánlottam így, de nyilván mindenkinek más az ideális. Stroustroup könyv is jó kezdőnek, ha mellette példakódokat is néz a netről minden témakörhöz. A többi könyvvel az a baj, hogy felszínesen átrohannak minden témán , aztán amikor az olvasó belenéz egy open source program forrásába, akkor nem érti, mert alapvető nyelvi elemeket nem ismertetett a könyv.
-
Benmartin
senior tag
-
válasz
sghc_toma
#543
üzenetére
Hali!
Elöször is bocsesz a "költői visszakérdezésért", de már előfordult, hogy valaki minden szakmai alapot nélkülöző hozzászólással gazdagított, amikor meg visszakérdeztem, hogy hát azért mégis elmagyarázhatná nekem(amúgy nem kellett volna) hogy hogyis van az, na azóta nem hallottam felőle.
Való igaz (ahogy Te illetve dabadab kolléga is írta) a GETS magában rejti ezt a fajta hibalehetőséget, de csak ezt, és ez jól látható(money[255]). Nyílván nem létezik olyan bankautomata amibe be lehet írni 255 számjegyből álló összeget, hogy adja ki 20ezresekbe, vagy ha igen szóljatok, mert kérek kölcsön egy MTZ traktort azt elhozzuk, mert akkor k... sok pénz van benne...
Azért nem szeretem a pl SCANF-t, mert az viszont rejtett "hibákat" tartalmaz és aki most ismerkedik a C-vel(lásd CELLPETI) azt nem tudhatja(mert sajnos a informatika vagy prográmozást oktató tanárbácsik is gyakran megfeletkeznek ennek elmagyarázásáról). Mire gondolok? Hát például Te is említést teszel ama bizonyos STDIN-ről ugyebár, amit a SCANF is "használ". Ha valaki tényleg korrekt INPUT-ot akar írni, annak erre oda kell figyelni. egy példával illusztrálom:
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
int main()
{
int n1,n2;
do {
printf("Enter 2 numbers [num1,num2]: ");
if (scanf("%d,%d",&n1,&n2)!=2) {
printf("Bad INPUT, try again or * to EXIT...\n");
continue;
}
printf("SUM(%d,%d) = %d\n",n1,n2,n1+n2);
} while (getch()!='*');
return 0;
}Nos, első ránézésre hibátlan, de mégsem. A következőképp működik az adott értékek mellett:
ha 5,7 akkor hibátlanul fut
ha 12345678901,12345678901, akkor hibás eredmény
ha a,b akkor hibás működés
ha 5.0,7.0 akkor hibás működésA hibás értékkel nem kell foglalkozni, az nyílvánvaló, azonban mi okozza a hibás működést? Nos annyit elárulok hogy a STDIN.
Természetesen nem Tőletek kérdem a megoldást(hisz biztosan tudjátok), hanem azoktól a leendő programozópalántáktól akik most ismerkednek a C-vel, és remélhetőleg elolvassák mások szakmai hozzászólását.
Szóval ezzel csak azt akartam illusztrálni, hogy kézenfekvő alap C input fx-ek is megtudják nehezíteni az ember életét, és ráadásul ezt úgy teszik hogy amúgy a kód hibátlan(vagy annak tűnik)Nos ezért szoktam kezdő programozóknál inkább a GETS-et alkalmazni.
Fire.
-
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Eladó Lenovo Legion Y530 magyar vil.bill.
- 512GB M.2 NVMe SSD-k nagy tételben eladók.
- HP EliteBook 755 G5 Ryzen 5 PRO /16GB RAM /500 GB SSD/15.6 FHD / magyar bill.garanciás laptop
- Új! WHITE 4K GAMER PC! AMD RYZEN 7 7800X3D / RX 9070XT 16GB / 32GB 6000Mhz / 1TB Nvme / 750W GOLD
- Gamer Pc jó áron! RTX 4060/16GB Ram/1TB SSD/R5 5500
- OnePlus Nord CE3 Lite 128GB, Kártyafüggetlen, 1 Év Garanciával
- Új és használt laptopok , üzletitől a gamerig , kedvező áron. Garanciával !
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7600X 32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- Apple iPad Pro 13 M4 256GB Wi-Fi használt, szép állapot 98% akku (113 ciklus)
- BESZÁMÍTÁS! 16GB G.skill Ares 2400Mhz DDR3 memória garanciával hibátlan működéssel
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest






