Obsah fóra
PravidláRegistrovaťPrihlásenie




Odpovedať na tému [ Príspevkov: 10 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 18.02.11
Prihlásený: 12.04.15
Príspevky: 211
Témy: 5
Príspevok NapísalOffline : 26.04.2011 20:13

Caute, potrebujem trosku pomoct. C-cko som nevidel uz par rokov a tak to aj vyzera.
zo zaciatku to ako tak slo ale teraz vobec hned to spadne. Mam pocit ze to bude mat nieco s alokaciou pameti. Ked nemam definovanu premennu char *letters tak to funguje

Kód:
#include "stdio.h"

int main(int argc, char *argv[])
{
  FILE *fp,*fw;
  char c,check;
  int j,k=0;
  int z=0;
  int index=0;
  char *letters;
  char *sequence;
 
 
  fp = fopen("G.TXT","r");
 
 

  if (fp == NULL) printf("File S.TXT doesn't exist\n");
  else
  {
   
    do   {
         
      c = getc(fp);  /* get one word from the file */
       if (c == '{'){
     ++k;
     }
    if (k == 9 ){
      if (c == '}') break;
          //  printf("%d.   %d  %c \n",k,c,c);
            sequence[index]=c;
            index++;
     
     
            }
 
         
    } while (feof(fp) == 0); /* repeat until end of file */
 
  }
 
printf("\n%s\n",sequence);


  fclose(fp);
 
  printf("\n");
 
  c=getchar();   
   return 0;
}

 


Offline

Užívateľ
Užívateľ
alokacia a ine

Registrovaný: 27.12.08
Prihlásený: 13.12.22
Príspevky: 1874
Témy: 96
Bydlisko: Bratislava,...
Príspevok NapísalOffline : 26.04.2011 21:02

1. kto ta ucil pisat kod? tabulator a rovnaky pocet volnych riadkov medzi castami kodu ti nieco hovori? ten printf tam vyzera ako druha funkcia.. aby aspon bolo ciastocne vidiet ze ktore kusky kodu patria do ktoreho bloku preboha..

2. C:\work\test2.c:10:11: warning: unused variable 'letters'
C:\work\test2.c:8:9: warning: unused variable 'z'
C:\work\test2.c:7:9: warning: unused variable 'j'
C:\work\test2.c:6:12: warning: unused variable 'check'
C:\work\test2.c:5:15: warning: unused variable 'fw'
naco tolko premennych, ktore v kode absolutne niesu pouzite?

3. co ten program ma robit? ani po dvojnasobnom precitani toho kodu som nepochopil.. najskor zistujes ci je na vstupe zo suboru zatvorka, potom ked je 9 zatvoriek, tak pokial je tam jedna ukoncujuca tak sa vypne program.. pokial je tam nieco ine tak sa vypise 9 a dvakrat to nieco.. potom program dojde na koniec, samozrejme uz nic nespravi.. nechapem tomu dako :D







_________________
~Listen to your brain, not your heart~
NB1: Lenovo Y500: CPU: Intel Core i7-3630QM; GPU: nVidia GT650M 2GB SLi; RAM: 16GB DDR3; HDD: 1TB + 256GB SSD (m4); LCD: 15,6" 1920x1080; OS: Win8.1 64-bit + Arch Linux 64-bit (UEFI Powered DualBoot)
NB2: Asus K53SJ-SX093: CPU: Intel Core i3-2310M; GPU: Intel HD3000 / nVidia GT520M 1GB Optimus; RAM: 8GB DDR3; SSD: 128GB 840Evo; LCD: 15,6" 1366x768; OS: Win 8.1 Pro 64-bit (UEFI)
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 18.02.11
Prihlásený: 12.04.15
Príspevky: 211
Témy: 5
Príspevok Napísal autor témyOffline : 26.04.2011 21:12

1. zatial sa stym len hram,vymazavam pridava, upravim to az na koniec
2. nedal som sem cely kod-zatial nepotrebny
3. po 9 najdeni "{" zacne pridavat znaky do sequence az po znak "}"


Offline

Skúsený užívateľ
Skúsený užívateľ
alokacia a ine

Registrovaný: 11.01.09
Prihlásený: 26.04.24
Príspevky: 1385
Témy: 9
Bydlisko: Hrinova
Príspevok NapísalOffline : 27.04.2011 10:11

1. chyba: mas kontrolu, ci subor neexistuje ( ci je fp NULL ):
Kód:
 if (fp == NULL) printf("File S.TXT doesn't exist\n");

Ale napriek tomu davas hned za blokom else vypis dat, ktore zistujes iba v pripade existencie suboru. A hned potom davas uzavriet subor, ktory ani nebol otvoreny. Oprav to tak, ze tieto dva riadky - printf a uzatvorenie suboru - daj do bloku else, kde je potvrdena existencia suboru.

2. chyba: nemas vobec alokovanu pamat pre premennu sequence. Surovo ukladas data do pamate, ktoru nemas pridelenu od systemu.

Mas tam toho este viac, ale momentalne sa ponahlam, potom neskor ti to dopisem. Zatial si mozes toto opravit.


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 18.02.11
Prihlásený: 12.04.15
Príspevky: 211
Témy: 5
Príspevok Napísal autor témyOffline : 27.04.2011 14:39

2. no sak to je moj problem, neviem ako mam dynamicky alokovat premenne
char *letters;
char *sequence;
neviem dopredu kolko znakov do nich ulozim.


Offline

Skúsený užívateľ
Skúsený užívateľ
alokacia a ine

Registrovaný: 11.01.09
Prihlásený: 26.04.24
Príspevky: 1385
Témy: 9
Bydlisko: Hrinova
Príspevok NapísalOffline : 28.04.2011 10:19

Pomocou funkcie malloc. A velkost pamate by mohla byt trebars velkost suboru. Ak chces urobit fakt pekny kod, ze pouzijes iba tolko pamate, kolko potrebujes, tak si vytvor spajany zoznam, ktoreho prvky budu typu char. Takto budes stale vytvarat novu bunku zoznamu s hodnotou znaku, ktory precitas a na konci jednoduchou funkciu uvolnis vsetku alokovanu pamat.

Ak si este nepouzival spajany zoznam, tak si o tom radsej este nieco precitaj ( napr prvy link, co som nasiel )


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 18.02.11
Prihlásený: 12.04.15
Príspevky: 211
Témy: 5
Príspevok Napísal autor témyOffline : 09.05.2011 15:25

moze sa mi niekto na toto pozriet a trosku to naformatovat a ak by sa to dalo dat to do funkcii nech to nevyzera tak debilne

http://rubbish.yweb.sk/code.c


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 03.02.07
Prihlásený: 25.04.18
Príspevky: 478
Témy: 105
Bydlisko: Košice/Rožň...
Príspevok NapísalOffline : 11.05.2011 10:21

ked uz tu je tato tema, tak napiem sem, pouzivam v programe malloc a free na pracu s pamätou

Kód:
currentItem = (ITEM*) malloc(sizeof(ITEM));


a kompilator mi pise:

Kód:
halloffame.c:11: warning: implicit declaration of function ‘malloc’
halloffame.c:11: warning: incompatible implicit declaration of built-in function ‘malloc’


a pritom mam aj inde pouzite malloc, tak isto a tam nepise ziadny warning


Offline

Skúsený užívateľ
Skúsený užívateľ
alokacia a ine

Registrovaný: 11.01.09
Prihlásený: 26.04.24
Príspevky: 1385
Témy: 9
Bydlisko: Hrinova
Príspevok NapísalOffline : 11.05.2011 12:15

Includni:
Kód:
#include <stdlib.h>


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 18.02.11
Prihlásený: 12.04.15
Príspevky: 211
Témy: 5
Príspevok Napísal autor témyOffline : 12.05.2011 16:42

Neviem ci sa spravne vyjadrim,ale potreboval by som aby sa udaje ukladali pomocou smernikou. Proste ked pridam hodnotu do keys vo funkcii get_keywords aby sa zapisala aj do key_words.
Alebo ako inak by som pomocou tej funkcie dostal hodnoty do pola key_words v main() ?


Kód:
void get_keywords(char**,char*);

int main(int argc, char *argv[]){
char key_words[n_k_words+1][word_length];

get_keywords(&key_words,source_code);
    return 0;
}

void get_keywords(char &keys,char *kod){
     int i=0,j=0k=0;
 
            do{
               k++;
               keys[i][j]=kod[k];                             
               j++;
               if(kod[k] == '|' || kod[k] == 39){
                  keys[i][j-1]='\0';
                  printf("%s\n",keys[i]);
                  i++;
                  j=0;
                   
               } 
            } while(kod[k] != 39);
}


Odpovedať na tému [ Príspevkov: 10 ] 


Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy. c dynamická alokácia dvojrozmerného poľa

v Assembler, C, C++, Pascal, Java

4

511

02.05.2017 20:47

BX Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Staticke pole smernikov a jeho polozky - alokacia pamate

v Assembler, C, C++, Pascal, Java

6

1400

27.03.2009 17:42

programator Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Iné rozmery

v PC zostavy

2

323

07.11.2011 19:04

Iggyi Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. MYTHBUSTERS + iné

[ Choď na stránku:Choď na stránku: 1, 2, 3 ]

v Kultúra, umenie, filmy, hudba, história, média

69

9331

17.05.2007 16:49

fero182 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. divx a ine

v Smartfóny a tablety

2

225

07.03.2013 21:51

Smith Wesson Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Všade je iné? :(

v ATI/AMD grafické karty

5

318

11.11.2014 17:53

Phanteom Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. dell wifi+ine..

v Ovládače

0

642

14.01.2008 15:54

malman Zobrazenie posledných príspevkov

Táto téma je zamknutá, nemôžete posielať nové príspevky alebo odpovedať na staršie. banner a ine

v Webdesign

6

650

28.09.2008 16:11

M@Xo Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Winrar alebo niečo iné

v Ostatné programy

12

901

01.08.2008 13:49

shiro Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Virus? alebo daco ine

v Operačné systémy Microsoft

11

548

11.01.2013 22:15

tomas_svk Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. odkazy na iné stránky

v Ostatné

2

531

10.06.2008 16:07

exoomer Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Iné písmo na stránkach

v Služby a webstránky

4

378

12.08.2014 7:58

mima792 Zobrazenie posledných príspevkov

Táto téma je zamknutá, nemôžete posielať nové príspevky alebo odpovedať na staršie. P: listky INE KAFE

v Predám

1

525

23.01.2011 20:35

TommyHot Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Zdroj? alebo nieco ine?

v PC skrinky a zdroje

2

431

27.04.2017 7:36

cherryman Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Prisavniky a ine ryby

v Voľný čas a hobby

3

1261

12.01.2009 15:02

feferonka Zobrazenie posledných príspevkov

Táto téma je zamknutá, nemôžete posielať nové príspevky alebo odpovedať na staršie. DVD-ROM alebo ine ?

v Optické zariadenia

3

456

24.06.2011 23:44

killer Zobrazenie posledných príspevkov


Nemôžete zakladať nové témy v tomto fóre
Nemôžete odpovedať na témy v tomto fóre
Nemôžete upravovať svoje príspevky v tomto fóre
Nemôžete mazať svoje príspevky v tomto fóre

Skočiť na:  

Powered by phpBB Jarvis © 2005 - 2024 PCforum, webhosting by WebSupport, secured by GeoTrust, edited by JanoF
Ako väčšina webových stránok aj my používame cookies. Zotrvaním na webovej stránke súhlasíte, že ich môžeme používať.
Všeobecné podmienky, spracovanie osobných údajov a pravidlá fóra