Hirdetés
- Tudjuk, de nem tesszük: a magyarok többsége nem törődik adatai védelmével
- Mesébe illő csodakábelt tervezett a GeForce-ok leégése ellen a Segotep?
- Irodát kért, de gyárat kapott Elon Musk a Samsungtól
- Nyílt forráskódú lett a legegyszerűbben használható AI tartalomgeneráló
- Hazavághatja a MicroSD memóriakártyák piacát a Biwin-féle Mini SSD
Új hozzászólás Aktív témák
-
skoda12
aktív tag
válasz
0xmilan
#4263
üzenetére
uj->ker[strlen(tempk)+1]='\0';
Ezeken a helyeken tulindexeled a tombot. Ha a tomb strlen(tempk) + 1 elembol all, akkor az utolso elemre az strlen(tempk) indexszel tudsz hivatkozni. Amugy a fenti explicit \0 iras nem szukseges, mert az strcpy a lezaro \0-t is atmasolja. Tovabba, ha mar ismert elore a stringek maximalis hossza, mint a temp valtozoid eseten, akkor erdemes lenne fix hosszal tarolni oket a struct-ban es egybol ezekbe olvasni. Igy megkimelned magad egy csomo pointerezestol es masolgatastol.
+ erdemes lenne megismerkedned valami debuggerrel, amivel sorrol sorra lepkedve tudnad futtatni a programodat, hogy az ilyen programmeghalos hibakat konnyebben megtalald. Kezdetben boven eleg lesz egy alap gdb tutorial a break, c, n, s parancsokkal -
skoda12
aktív tag
válasz
0xmilan
#4261
üzenetére
Ket hibat latok elsore. Az egyik, hogy az "uj" char* elemeinek foglalsz helyet mallockal, de a "lista" inicializalatlan elemeibe probalsz masolni strcpyvel. A masik, hogy az ilyen inicializalasoknal
uj->ker=(char*) malloc(strlen(tempk)*sizeof(char));nem veszed figyelembe, hogy majd a lezaro \0-nak is kellene egy hely a karakterlanc vegen.
+ nincs ertelme NULL-lal meghivni a beolvas fuggvenyt, bar ebben az esetben nem emiatt mukodik rosszul a kod.
-
skoda12
aktív tag
Nagyjabol igen. Ha van egy kulcsod es egy szamod, amirol tudod, hogy a kulccsal es a XOR muvelettel lett titkositva, akkor a XOR-t vegrehajtva a titkositott szamon visszakapod az eredetit. A fenti feladatod azt hasznalja ki, hogy a C-ben a char integralis tipus, igy a begepelt szoveg minden karakteren tudsz bitmuveleteket vegezni.
-
-
skoda12
aktív tag
Sosem foglalkoztam telefonokkal, de ha egy forráskódból futtatható binárist készítesz, akkor abból nem kapható vissza az eredeti forráskód. Az azonosítókat nem fordítják bele, így pl változóneveket, függvényneveket biztos nem lehet visszahozni. Ha van a telefonokra valami assembly szerű nyelv, akkor ilyen assembly utasításokra valószínűleg vissza lehet fejteni.
-
skoda12
aktív tag
válasz
Black-core
#1080
üzenetére
Dev-C++ és Code:
locks a két legegyszerűbb fejlesztői környezet. Amelyik tetszik azt válaszd. -
skoda12
aktív tag
válasz
Black-core
#1078
üzenetére
Magyart neten nem tudok mutatni. Esetleg valami könyvet érdemes lenne megvenni. Computerbooks-nak vannak kifejetten kezdőknek szóló könyvei. Az nem probléma, hogy nem vágod az angolt. Én 13 évesen kezdtem szintén C-vel, angolul egyáltalán nem tudtam, egy netes angol-magyar szótárral hámoztam ki a mondatok értelmét. Nagyon lassan haladtam, de olyan 100-150 szót kellett ismerni és az informatikai szövegeket jól le tudtam fordítani. Ezt azért írom le, mert mindenképp angolul fogod megtalálni a legjobb forrásokat programozáshoz a neten. Illetve sok jó könyvet le sem fordítanak magyarra, mert mire kész lenne addigra elavul a könyv tartalma.
De Kernighan könyvét pl lefordították: [link]
-
skoda12
aktív tag
válasz
Black-core
#1076
üzenetére
Kezdetnek ezt találtam: [link]
Ez nagyjából a C alapjain végig is visz. Ha mélyebben akarsz vele foglalkozni, akkor keress rá Kernighan nevére, ő írt egy nagyon jó könyvet C-ről. -
skoda12
aktív tag
válasz
Elektromann
#1062
üzenetére
File->New->Project->Console Application
Itt megkérdezi, hogy mit hova pakoljon, meg hasonlók. Létre fog hozni egy forrásfájlt. Kitörlöd a tartalmát és beírod a kódod. -
skoda12
aktív tag
válasz
Elektromann
#1055
üzenetére
Mi a hibaüzenet? Nálam hibátlanul fordul. Project-be tetted?
-
skoda12
aktív tag
válasz
Elektromann
#1053
üzenetére
Nincs most a gépemen VS, de valószínűleg az a baj, hogy csak a fájlt írtad meg, de nem szervezted project-be. File->New Project itt, amit létrehoz forrásfájlt, abba másold a saját kódod és Build.
De szerintem neked egy egyszerűbb IDE kellene először. Code:
locks nevű progit töltsd le, és azzal tudsz kódot is szerkeszteni, meg lejön vele a fordítóprogram is. -
skoda12
aktív tag
válasz
Elektromann
#1051
üzenetére
Le kell fordítani a kódot egy fordítóval. VS 2008 menüjében valami olyat keress, hogy Build talán a project menüponton belül van, ha jól emlékszem.
-
skoda12
aktív tag
Ennek működnie kell:
char* line = "25asifh 125 dfis df 25 25 25 dsojg 2525";
const char* pattern = "25";
char* tmp = line;
int count = 0;
do
{
tmp = strstr(tmp,pattern);
if(tmp)
{
char *ch1 = tmp;
char *ch2 = tmp;
ch1--;
ch2 = ch2 + strlen(pattern);
if(((*ch2) == ' ' || (*ch2) == '\0') && (ch1 < line || (*ch1) == ' '))
{
count++;
}
tmp = tmp + strlen(pattern);
}
}while(tmp); -
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.
-
skoda12
aktív tag
válasz
Zwiebel
#1021
üzenetére
C-hez könyv: Brian Kernighan & Dennis Ritchie A C programozási nyelv
C++ könyv: Bjarne Stroustroup A C++ programozási nyelvEzenkívül rengeteg más a témával kapcsolatos könyvet fogsz találni a boltokban, de mind hulladék. Ezt komolyan mondom. Elég ha a terjdelmeket összehasonlítjuk, már akkor is látszik. A lényeg, hogy ha ezen a vonalon akarsz elindulni, akkor először a C-s könyvet utána a C++ könyvet olvasd ki. Utóbbit nem árt többször is elolvasni. Már csak azért is ezeket vedd meg, mert ha később programozónak tanulsz, akkor egyetemen is ezekből kell majd tanulnod.
-
skoda12
aktív tag
válasz
Dirty_Pio
#804
üzenetére
Most pici jobban ránéztem a kódra. A fordító azért is szólni fog, amit fentebb írtam. Nem az a lényeg, hogy %i vagy %d, hanem, hogy kell a printf-nek következő paraméter is. Az is probléma viszont, hogy pár dolgot elírtál, pl printf helyett pritnf -t írtál, printstudents nevű függvényed pedig nincs, szintén elírás miatt, emiatt nem találja ezeket a függvényeket. Strcpy-t sem fogja felismerni, mert nincs betolva a megfelelő header fájl. Így már megeszi a fordító:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAXST 20
#define MAXNL 50
struct student {
char *name;
float mark;
} ;
int getname(char *p)
{
int i=0;
char *q,c;
q=p;
while ( (c=getchar()!='\n') && i<MAXNL)
{
q[i]=c;
i++;
}
q[i]='\0';
return (i);
}
void read_student ( struct student a[], int n)
{
char *p;
int i,e;
p=malloc(sizeof(char)*MAXST);
for (i=0;i<n;i++)
{
printf("\n the %d th student is:",i);
e=getname(p);
a[i].name=malloc(e*sizeof(char));
strcpy(a[i].name,p);
printf("\n mark for %s :",a[i].name);
scanf("%f",&a[i].mark);
}
free(p);
}
void printstudents(struct student a[], int n)
{
int i;
struct student *p;
p=a;
for (i=0;i<n;i++)
printf("%s\n",a[i].name);
}
int main(void){
struct student a[MAXST];
int nstdnt;
printf("students nr is:");
scanf("%i",&nstdnt);
read_student(a,nstdnt);
printstudents(a,nstdnt);
return(0);
}
Ú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!
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- Folyószámla, bankszámla, bankváltás, külföldi kártyahasználat
- Azonnali alaplapos kérdések órája
- Amazon
- SSD kibeszélő
- exHWSW - Értünk mindenhez IS
- Counter-Strike: Global Offensive (CS:GO) / Counter-Strike 2 (CS2)
- TCL LCD és LED TV-k
- Rezsicsökkentés, spórolás (fűtés, szigetelés, stb.)
- iPhone topik
- További aktív témák...
- Lenovo Legion Pro 7 16IAX10 Intel Core Ultra 9 275HX/RTX 5070 Ti/64GB RAM/1TB SSD eladó BONTATLAN!!!
- Lenovo Legion 9 18IAX10 Intel Core Ultra 9 275HX/RTX 5080/64GB RAM/2TB SSD eladó BONTATLAN!!!!!!
- AMD Ryzen 5600X/Radeon RX 6800 16GB/32GB DDR RAM/1TB SSD konfig eladó
- Bomba ár! Dell Latitude E7270 - i5-6GEN I 8GB I 256GB SSD I 12,5" HD I HDMI I CAM I W10 I Gari!
- Bomba ár! Dell Latitude 7490 - i7-8GEN I 16GB I 256SSD I 14" FHD Touch I HDMI I Cam I W11 I Gari!
- Apple iPhone 17 Pro Silver 256 GB Használt, karcmentes 100% akku / 0 ciklus 1 év gari!
- GYÖNYÖRŰ iPhone XR 64GB Black -1 ÉV GARANCIA - Kártyafüggetlen, MS3995, 100% Akksi
- Honor 90 /12/512GB / Kártyafüggetlen / 12Hó Garancia
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7500F 16/32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- Apple iPhone 12 Pro 512GB,Újszerű,Dobozával,12 hónap garanciával
Állásajánlatok
Cég: BroadBit Hungary Kft.
Város: Budakeszi
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
locks a két legegyszerűbb fejlesztői környezet. Amelyik tetszik azt válaszd.
Erről van szó:

