Obsah fóra
PravidláRegistrovaťPrihlásenie




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

Užívateľ
Užívateľ
C - načítanie stringu

Registrovaný: 13.10.09
Prihlásený: 22.06.15
Príspevky: 168
Témy: 28
Príspevok NapísalOffline : 08.10.2010 9:00

Zdravím, v C som úplný začiatočník..
Potreboval by som pomôcť s triválnosťou typu :
Citácia:
Zadaj meno : bablbaba
tvoje meno je ....

Jasan že stačí načítať reťazec znakov, následne ho vypísať cez printf..
Ale pokiaľ viem, tak pôvodné Cčko nepodporuje, resp. neobsahovalo premennú typu string. Ako teda na to ?
Napadlo mi jednoducho spraviť char c[50]; , čo im vytvorí 49znakov + ukončovací znak, ale cez scanf ani getchar neviem do takéhoto niečoho načítať string.

Na nete sa povaľuje kopa návodov, ale tam už miešajú C, C++ a C# dokopy, čo ja nechcem. Potreboval by som to striktne v Cčku..







_________________
Laptop: Model Name Dell Studio 1555 | CPU Intel Dual Core Centrino 2.4ghz | RAM 4096 MB | SSD Samsung 840 Evo: 500GB | Graphics Ati Radeon HD 4570 | Display Resolution 1366*768 | OS Windows 7 Professional x64
Offline

Užívateľ
Užívateľ
C - načítanie stringu

Registrovaný: 19.09.06
Prihlásený: 21.04.24
Príspevky: 749
Témy: 31
Bydlisko: Ružomberok&...
Príspevok NapísalOffline : 08.10.2010 10:35

a co ti na tom nejde? to bezne funguje scanf("%s",c);


Offline

Užívateľ
Užívateľ
C - načítanie stringu

Registrovaný: 13.10.09
Prihlásený: 22.06.15
Príspevky: 168
Témy: 28
Príspevok Napísal autor témyOffline : 09.10.2010 22:49

Ide mi to, ale používam Visual Studio, ktoré je primárne CPP, čiže ak aj v C súbore hodím niečo z cpp, tak nevyhodí chybu..
Potreboval by som to striktne v C... Je to čisté Cčko ?







_________________
Laptop: Model Name Dell Studio 1555 | CPU Intel Dual Core Centrino 2.4ghz | RAM 4096 MB | SSD Samsung 840 Evo: 500GB | Graphics Ati Radeon HD 4570 | Display Resolution 1366*768 | OS Windows 7 Professional x64
Offline

Prevádzkovateľ fóra
Prevádzkovateľ fóra
C - načítanie stringu

Registrovaný: 01.05.05
Príspevky: 13348
Témy: 1496
Bydlisko: Bratislava
Príspevok NapísalOffline : 09.10.2010 22:54

Kód:
int main() {
   char c[50];
   scanf("%s",&c);
   return 0;
}


to je C, ale Visual ti to aj tak skompiluje...v c skompilujes aj kod z assembleru







_________________
Streacom DA2 | SilverStone Titanium SX800-LTI 800W | ASRock X299E-ITX/ac | Intel Core i9-9980XE & be quiet! Dark Rock TF | Kingston HyperX Impact 64 GB DDR4 2666 MHz | NVIDIA Titan RTX 24 GB | Intel SSD Optane 905P 480 GB NVMe U.2 & Intel SSD 750 1,2 TB NVMe U.2 & Intel SSD 660p 2 TB NVMe M.2 & Seagate BackUp Plus Portable 56 TB USB | 55" 4K OLED Dell Alienware AW5520QF & 24" LCD EIZO FlexScan EV2451 | Ergotron LX Wall Mount Keyboard Arm | Logitech Craft | Logitech G603 | Logitech F710 | Harman Kardon Sabre SB 35 & Sennheiser RS 175 | Microsoft Windows 7 Ultimate | APC Back-UPS ES 700 | Lenovo ThinkPad X250 | iPhone X 256 GB & Pitaka Aramid | SilverStone ML05B Milo | Corsair SF600 SFX 600W | ASRock X99E-ITX/ac | Intel Xeon E5-2683 v4 & NOCTUA NH-L12S | Kingston HyperX Savage 32 GB DDR4 2400 MHz | NVIDIA GeForce GT 710 1 GB | Intel SSD Optane Memory 32 GB NVMe M.2 & Intel SSD 730 240 GB SATA | Ubuntu Server
Offline

Užívateľ
Užívateľ
C - načítanie stringu

Registrovaný: 13.10.09
Prihlásený: 22.06.15
Príspevky: 168
Témy: 28
Príspevok Napísal autor témyOffline : 10.10.2010 0:36

Diky chalani..
Miatlo ma, že túto únikovú sekvenciu som nikde nenašiel...







_________________
Laptop: Model Name Dell Studio 1555 | CPU Intel Dual Core Centrino 2.4ghz | RAM 4096 MB | SSD Samsung 840 Evo: 500GB | Graphics Ati Radeon HD 4570 | Display Resolution 1366*768 | OS Windows 7 Professional x64
Offline

Užívateľ
Užívateľ
C - načítanie stringu

Registrovaný: 19.09.06
Prihlásený: 21.04.24
Príspevky: 749
Témy: 31
Bydlisko: Ružomberok&...
Príspevok NapísalOffline : 10.10.2010 13:39

JanoF píše:
Kód:
int main() {
   char c[50];
   scanf("%s",&c);
   return 0;
}


to je C, ale Visual ti to aj tak skompiluje...v c skompilujes aj kod z assembleru


je tam potrebny ten &? ved to uz je smernik.

//"unikova sekvencia :D pripomenul si mi prednasajuceho z javy, co prelozil vsetko co sa dalo (je to povodom srb) :D


Offline

Skúsený užívateľ
Skúsený užívateľ
C - načítanie stringu

Registrovaný: 24.01.08
Prihlásený: 13.09.17
Príspevky: 14572
Témy: 66
Bydlisko: Žilina
Príspevok NapísalOffline : 10.10.2010 13:58

& nie je smerník, ale adresa premennej 'c' ....







_________________
C#, PHP, ...
Offline

Skúsený užívateľ
Skúsený užívateľ
C - načítanie stringu

Registrovaný: 11.01.09
Prihlásený: 23.04.24
Príspevky: 1385
Témy: 9
Bydlisko: Hrinova
Príspevok NapísalOffline : 10.10.2010 14:28

smerník = pointer = adresa

Ak potrebuješ získať adresu poľa ( čiže adresu prvého prvku poľa ), tak to môžeš urobiť takto:
Kód:
c;

alebo takto:
Kód:
&c[0];

Čiže znak & tam nie je nutný, keďže "%s" očakáva práve adresu poľa znakov.







_________________
Ak potrebujete pomoc s diagnostikou/opravou vasej elektroniky ( notebook, motherboard, GPU, a ine ), kontaktujte ma cez SS.
Offline

Skúsený užívateľ
Skúsený užívateľ
C - načítanie stringu

Registrovaný: 24.01.08
Prihlásený: 13.09.17
Príspevky: 14572
Témy: 66
Bydlisko: Žilina
Príspevok NapísalOffline : 10.10.2010 16:33

súhlasím, že pointer = smerník (je to obyčajný preklad do SK)

ale nesúhlasím, že pointer = adresa
pointer (*) = premenná, ktorá ukazuje (obsahuje) na adresu nejakej premennej
adresa (&) = adresa premennej

pokiaľ by adresa a smerník boli identickou vecou, načo by sa používali dva termíny (referencia a dereferencia)

vďaka dereferencii (smerníku, pointeru, hviezdičke (stále to isté ale inak pomenované)) môžeš získať hodnotu na danej adrese a môžeš tú hodnotu meniť

vďaka referencii (ampersandu) získame adresu danej premennej

je to už pár rokov čo som naposledy robil s C a C++, ale takto si to pamätám ja..







_________________
C#, PHP, ...
Offline

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

Registrovaný: 04.03.09
Prihlásený: 21.09.13
Príspevky: 24
Témy: 0
Príspevok NapísalOffline : 10.10.2010 19:34

Nemusi ukazovat len na premennu , moze ukazovat na hocijaky datovy objekt.
Suhlasim s waltherom , pointer != adresa. Pointer totiz definuje aj typ datoveho objektu na ktori ukazuje ...


Offline

Skúsený užívateľ
Skúsený užívateľ
C - načítanie stringu

Registrovaný: 24.01.08
Prihlásený: 13.09.17
Príspevky: 14572
Témy: 66
Bydlisko: Žilina
Príspevok NapísalOffline : 10.10.2010 20:01

jo, ďakujem za doplnenie :) je fajn vedieť že som si zo školy aspoň dačo dobre zapamätal :lol:







_________________
C#, PHP, ...
Offline

Užívateľ
Užívateľ
C - načítanie stringu

Registrovaný: 16.02.08
Prihlásený: 08.12.10
Príspevky: 235
Témy: 13
Príspevok NapísalOffline : 10.10.2010 21:09

walther píše:
& nie je smerník, ale adresa premennej 'c' ....


stopa myslel, ze & tam netreba, lebo c uz je pointer a teda jeho hodnota je priamo adresa, s cim pocita funkcia scanf(...) ;)







_________________
Učet je neaktívny.
Offline

Užívateľ
Užívateľ
C - načítanie stringu

Registrovaný: 19.09.06
Prihlásený: 21.04.24
Príspevky: 749
Témy: 31
Bydlisko: Ružomberok&...
Príspevok NapísalOffline : 10.10.2010 21:54

jo, aspon niekto pochopil jednoduchu vetu :D


Offline

Skúsený užívateľ
Skúsený užívateľ
C - načítanie stringu

Registrovaný: 11.01.09
Prihlásený: 23.04.24
Príspevky: 1385
Témy: 9
Bydlisko: Hrinova
Príspevok NapísalOffline : 11.10.2010 9:51

Jasné walther, musím sa ti ospravedlniť, teraz vidím, že som napísal blbosť. Niekedy mám problém vyjadriť svoje myšlienky :)







_________________
Ak potrebujete pomoc s diagnostikou/opravou vasej elektroniky ( notebook, motherboard, GPU, a ine ), kontaktujte ma cez SS.
Offline

Užívateľ
Užívateľ
C - načítanie stringu

Registrovaný: 13.10.09
Prihlásený: 22.06.15
Príspevky: 168
Témy: 28
Príspevok Napísal autor témyOffline : 17.10.2010 21:33

Diky všetkým chalani, mne trebalo to %s, nebol som si istý či to tak môže byť..
Lebo sa mi zdalo divné, že premennú string nepozná, ale Escape Sequence string áno..







_________________
Laptop: Model Name Dell Studio 1555 | CPU Intel Dual Core Centrino 2.4ghz | RAM 4096 MB | SSD Samsung 840 Evo: 500GB | Graphics Ati Radeon HD 4570 | Display Resolution 1366*768 | OS Windows 7 Professional x64
Odpovedať na tému [ Príspevkov: 15 ] 


Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy. opatovne nacitanie Stringu - JAVA

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

10

776

03.02.2011 18:13

Bajzik Zobrazenie posledných príspevkov

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

v PHP, ASP

4

436

24.05.2009 22:17

Blackdevil Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. java - kontrola stringu

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

15

641

16.12.2010 14:22

arnie16 Zobrazenie posledných príspevkov

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

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

2

408

14.11.2012 18:09

faraon Zobrazenie posledných príspevkov

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

v PHP, ASP

3

397

10.03.2009 17:34

Tominator Zobrazenie posledných príspevkov

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

v JavaScript, VBScript, Ajax

3

442

16.03.2010 20:59

juho Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. pridavanie medzier do stringu

v PHP, ASP

7

420

31.01.2009 21:38

stenley Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. JAVA - získanie stringu zo súboru

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

6

418

21.04.2014 23:34

XOLOO Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. return stringu po ajaxovom calle

v JavaScript, VBScript, Ajax

7

344

10.06.2014 22:57

hatto13 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Odstranenie nadbytocnych medzier, tabulatorov zo stringu....

v PHP, ASP

11

851

09.10.2014 20:13

1daemon1 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. ako najst poziciu v stringu regexpom?

v PHP, ASP

8

559

29.12.2010 19:36

misko16 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Rozdelenie stringu do pola stringov v Jave

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

6

692

17.10.2012 22:41

Vicma Zobrazenie posledných príspevkov

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

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

5

573

23.08.2014 21:35

nasm Zobrazenie posledných príspevkov

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

v Notebooky a netbooky

1

1067

20.01.2011 19:29

majky358 Zobrazenie posledných príspevkov

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

v AMD čipové sady

11

839

05.12.2015 12:09

filip987 Zobrazenie posledných príspevkov

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

v Ostatné

6

467

21.06.2013 14:35

ofun 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