Programovanie ccs C

C,C++,C#

Moderátori: psichac, Moderátori

Používateľov profilový obrázok
niki31
Stály člen
Stály člen
Príspevky: 172
Dátum registrácie: 05 Feb 2010, 00:00
Bydlisko: Žilinský kraj
Vek: 49

Re: Programovanie ccs C

Príspevok od používateľa niki31 » 29 Aug 2020, 10:50

Ja nenadávam, veď som už písal v čom bol problém a že je vyriešený. Kolega si stiahol kompilátor bez debuggera a ešte kompiloval niečo iné než som popisoval. Takže vie prd aké hodnoty to vracia. Jediné o čo mu ide je pomasírovať si ego, to nemá nič spoločné so vzdelaním.
0
Niki31

Používateľov profilový obrázok
StefanST
Pokročilý člen
Pokročilý člen
Príspevky: 778
Dátum registrácie: 20 Feb 2012, 22:25
Bydlisko: Nové Zámky

Re: Programovanie ccs C

Príspevok od používateľa StefanST » 29 Aug 2020, 15:04

OT: Ešteže nie sú obľúbené súboje, ako v 19. storočí.
Aké zbrane teraz ? pištole, kordy ... nie, kompilátory.
0

peterple
Ultimate člen
Ultimate člen
Príspevky: 2328
Dátum registrácie: 25 Jún 2013, 21:06
Bydlisko: Krajné
Vek: 57
Kontaktovať používateľa:

Re: Programovanie ccs C

Príspevok od používateľa peterple » 29 Aug 2020, 21:17

niki31 napísal:A čím si to debugoval ty chytrák. Takto to šlo skompilovať aj mne inak by som asi nevedel aké mi to vracia hodnoty. V prvej funkcii boli hodnoty správne ale v druhej už nie.
Uniklo ti že ja pracujem s ROM pamäťou, preto tam mám to slovo const. PIC majú oddelenú pamäť dat a programu. Ukazatele do ROM tam fungujú trochu inak, pretože prístup do ROM obstaráva podprogram ktorý generuje virtuálnu adresu. To vidím ako zdroj problémov, nie jazyk C. Skrátka PIC nieje x86.
V prvom rade ďakujem za pochvalu. Hej tiež si myslím že nie som úplne mechom praštený a niečo málo o C viem. Nedebugoval som to v ničom. Stiahol som si Tvoj kompilátor kedže si namietal že ten môj je iný. Ty si tvrdil že to nejde skopilovať a že každý iný zápis než ten tvoj generuje chybu (samozrejme len tak do vetra, žiadny screenshot si tu nedal). To že pracuješ s ROM mi naozaj uniklo. Ale myslím si že ani to nieje pravda. Aspoň teda na ten kód čo si poslal nevidím nič čo by nariadilo prekladaču aby text Ahoj umiestnil do pamäte ROM.Tiež tvoja predstava virtuálnej adresy je mylná. Netuším prečo argumentuješ rodinou x86 jasne ti tam hore svieti PIC16F57. Aj som Ti vysvetlil že v deme ten Tvoj procesor je červený, teda sa nedá použiť.

Najviac ma však pobavilo tebou uvádzané riešenie problému v tvare
niki31 napísal:Takže nakoniec to funguje s následovným zápisom:
void funct1 (const char *pS)
{
funct2(*(&pS));
}
Pre tých čo nevedia čo ten zápis znamená, tak operácie * a & sú v tomto prípade ako inverzné funkcie v matematike. Čiže

Kód: Vybrať všetko

√x²=x
*(&pS) = pS
funct2(*(&pS)); je to isté ako   funct2(pS);  
Teda to čo mi tu od samého začiatku hovoríme.
A ďalšia perla je ako si Štefanovi vysvetlil ten tvoj nekorektný zápis
niki31 napísal:void funct2 (const char *pS)
{
char chr = pS;
}
Vraj
niki31 napísal:Veď pS je adresa prvého znaku v reťazci.

V CCS C je zápis char x = *pS totožný s char x = pS, oba vrátia hodnotu byte kde ukazuje ukazateľ.
Akékoľvek zápisy s hranatými zátvorkami kompilátor neberie.
Tvrdenie (červeným) je samozrejme nepravdivé.
Ohľadom ega - debata s tebou ho masíruje fakt dobre. Ak si niekto pozrie históriu mojich príspevkov tak sa v poslednej dobe ozývam len keď sa tu zjavia očividné hlúposti na ktoré nikto nepoukáže.
0
Ukáž múdremu chybu a on sa ti poďakuje. Ukáž chybu hlupákovi a on sa urazí.

stefanSK
Pokročilý člen
Pokročilý člen
Príspevky: 752
Dátum registrácie: 24 Jún 2010, 00:00
Bydlisko: Trnava
Vek: 68

Re: Programovanie ccs C

Príspevok od používateľa stefanSK » 29 Aug 2020, 21:46

OT: peterple vzdaj to, ja som to vzdal okamžite. Za svojej 40 ročnej aktívnej pracovnej činnosti v oblasti programovania, hlavne v C, C++ v rôznych operačných systémoch ako WINDOWS, Linux Unix, QNX a embended aplikáciách si myslím, že jazyk C ovládam. Podľa mňa pre programovanie v C je zásadné sa naučiť správne používať smerníky, pomocou ktorých a ich pretypovania na rôzne typy premenných a štruktúr, sa dajú robiť divy. (nebudem tu radšej spomínať správne definovanie premenných, aby bol kód prenositeľný na rôzne procesory od 8bitových po 64 bitové, big endian, low endian,...).
0
S.K.

Napísať odpoveď
  • Podobné témy
    Odpovedí
    Zobrazení
    Posledný príspevok