Jump to content

SUBIECTE NOI
« 1 / 5 »
RSS
"Moda" tinerilor care se ...

E.on energie aplicație intre...

Masina de tuns... buruieni

Recomandare drona
 Exista un soft care sa reia autom...

Identificare plante

Cum declari o variabila care nu s...

Schimbare certificat de inmatricu...
 Poligon auto București

nelamurire legata de pret la mode...

Hotel cu restaurant si Demipensiu...

Croaziera in Mediterana de Vest 1...
 Copilot are pica pe Vladimir Putin

MicroSoft Edge: Cum pun Google in...

Dashcam

Mini server - VMware
 

Referințele în C++

- - - - -
  • Please log in to reply
43 replies to this topic

#37
TheOriginals

TheOriginals

    Junior Member

  • Grup: Members
  • Posts: 51
  • Înscris: 30.05.2016
E super..m-am prins.
Apropo OriginalCopy cartea, tutorialul ce-o fi el e super şi cred că nu ar strica să o pui undeva mai sus să o găsescă mai uşor lumea.
Eu câte combinaţii de cuvinte referitoare la pointeri am făcut pe google tot nu am găsit-o.
Explică foarte bine.

#38
TheOriginals

TheOriginals

    Junior Member

  • Grup: Members
  • Posts: 51
  • Înscris: 30.05.2016
Am mai dat peste o mică nelămurire la incrementare:
void copy(int* pa, int* pb, int nr)
{
while (nr !=0)
{
*pb = *pa;
cout << *pb << endl;
pb++; // [color=#ff0000]eu am facut pb=pb+4 şi nu merge[/color]
pa++;//[color=#ff0000]am facut pb=pb+4 şi nu merge[/color]
//functionează şi aşa
*pb++;
*pa++;
nr--;
}
}


Am căutat puţin pe net şi am găsit asta:
p++; // use it then move to next int position
++p; // move to next int and then use it
++*p; // increments the value by 1 then use it
++(*p); // increments the value by 1 then use it
++*(p); // increments the value by 1 then use it
*p++; // use the value of p then moves to next position
(*p)++; // use the value of p then increment the value
*(p)++; // use the value of p then moves to next position
*++p; // moves to the next int location then use that value
*(++p); // moves to next location then use that value


După cum spune la *p++, foloseşte valoarea apoi treci la următorea poziţie, adică aş putea spune că teoretic vorbin as putea împărţi (*p++) :
1. *p
2. p+sizeof(type)?
E corect?
Adică o să încrementeze valorea adresei şi valorea pointată?

Edited by TheOriginals, 01 June 2016 - 12:29.


#39
TheOriginals

TheOriginals

    Junior Member

  • Grup: Members
  • Posts: 51
  • Înscris: 30.05.2016
Am găsit răspunsul..cred că, compilatorul în funcţie  de tipul de dată ştie câţi octei să adune până la următoarea variabila.
Când  mă jucam cu pointerii de obicei foloseam char care e pe 1 octet şi adunam un 1. Acum la int adunam un 4 (4 octeţi) dar defapt trebuie adunat tot câte un 1.

#40
MarianG

MarianG

    be that as it may

  • Grup: Moderators
  • Posts: 31,452
  • Înscris: 10.08.2005
De fapt aduni cati octeti ocupa tipul de date din care este format sirul.
pentru a nu te baza pe compilator.

Edited by MarianG, 02 June 2016 - 04:35.


#41
OriginalCopy

OriginalCopy

    I'm harmful, fear me please! :))

  • Grup: Senior Members
  • Posts: 27,268
  • Înscris: 10.08.2006

 Thefake_fake_fake, on 01 iunie 2016 - 11:12, said:

E super..m-am prins.
Apropo OriginalCopy cartea, tutorialul ce-o fi el e super şi cred că nu ar strica să o pui undeva mai sus să o găsescă mai uşor lumea.
Eu câte combinaţii de cuvinte referitoare la pointeri am făcut pe google tot nu am găsit-o.
Explică foarte bine.
E mentionat in Lucruri pe care orice programator ar trebui să le ştie

#42
TheOriginals

TheOriginals

    Junior Member

  • Grup: Members
  • Posts: 51
  • Înscris: 30.05.2016

 MarianG, on 02 iunie 2016 - 04:29, said:

De fapt aduni cati octeti ocupa tipul de date din care este format sirul.
pentru a nu te baza pe compilator.

Ar fi drăguţ dacă ar merge..da nu prea vrea aşa..uite în exemplul de mai sus...e int ar trebuie adunat 4..daca fac pb=pb+4 nu merge. Dacă faci +1 totul e ok

#43
MarianG

MarianG

    be that as it may

  • Grup: Moderators
  • Posts: 31,452
  • Înscris: 10.08.2005
si pana la urma sunt 4 octeti sau unul ?
sau un grup de patru ?

#44
TheOriginals

TheOriginals

    Junior Member

  • Grup: Members
  • Posts: 51
  • Înscris: 30.05.2016
Int-ul e pe 4, dar el vrea adunat câte unul pentru că ştie să adune el în funcţie de tipul de dată (aşa cred eu)

Anunturi

Second Opinion Second Opinion

Folosind serviciul second opinion ne puteți trimite RMN-uri, CT -uri, angiografii, fișiere .pdf, documente medicale.

Astfel vă vom putea da o opinie neurochirurgicală, fără ca aceasta să poată înlocui un consult de specialitate. Răspunsurile vor fi date prin e-mail în cel mai scurt timp posibil (de obicei în mai putin de 24 de ore, dar nu mai mult de 48 de ore). Second opinion – Neurohope este un serviciu gratuit.

www.neurohope.ro

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

Forumul Softpedia foloseste "cookies" pentru a imbunatati experienta utilizatorilor Accept
Pentru detalii si optiuni legate de cookies si datele personale, consultati Politica de utilizare cookies si Politica de confidentialitate