<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="pl-pl">
<link rel="self" type="application/atom+xml" href="https://forum.atnel.pl/feed.php?f=4&amp;t=13262&amp;mode" />

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2015-10-16T17:46:06+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=13262&amp;mode</id>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2015-10-16T17:46:06+01:00</updated>
<published>2015-10-16T17:46:06+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13262&amp;p=142639#p142639</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13262&amp;p=142639#p142639"/>
<title type="html"><![CDATA[Re: Miernik napięcia/natężenia z BB.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13262&amp;p=142639#p142639"><![CDATA[
<div class="quotetitle">shark31 napisał(a):</div><div class="quotecontent"><br />ale mi chodzi o to czy dobrze rozumiem jak to się odbywa. Bo samo &quot;str&quot; bez &quot;*&quot; oznacza adres komórki wskaźnika, a &quot;*strp&quot; oznacza wartość w jakiejś komórce.<br /></div><br /><br />No nie rozumiesz ,..... a wiesz dlaczego ? Bo nie doczytałeś nie poświęciłeś uwagi na dobre zrozumienie czym różni się DEFINICJA od DEKLARACJI<br /><br /><br />char * wsk;<br /><br />co to jest ? .... wiesz ? .... to jest DEKLARACJA a nie że jak piszesz:<br /><div class="quotetitle">shark31 napisał(a):</div><div class="quotecontent"><br />&quot;*strp&quot; oznacza wartość w jakiejś komórce.<br /></div><br /><br />w ramach deklaracji gwiazdka oznacza, że to jest WSKAŹNIK rozumiesz ? ... to samo się tyczy argumentów w funkcji<br /><br />fun( char * wsk );<br /><br />tutaj też *wsk nie ma NIC WSPÓLNEGO ze wskazywaniem czegoś w pamięci, to jest TYLKO deklaracja wskaźnika jako argumentu. Poczytaj też czym różnią się argumenty formalne od aktualnych bo to też chyba się tobie jeszcze mocno myli<br /><br />-------------------------------<br /><br />reasumując, tutaj:<br /><br />char *int_to_str(int val, char *str, int8_t fw, char znak_wiodacy) <br /><br />*str <br /><br />mówi tylko o tym, że do funkcji ma trafić wskaźnik, a wewnątrz samej funkcji już możemy go używać, <br /><br />albo jako<br /><br />*str  - i dopiero teraz wskazuje on na jakąś komórkę pamięci<br /><br />albo jako<br /><br />str - i teraz jest to TYLKO adres argumentu w pamięci RAM<br /><br /><div class="quotetitle">shark31 napisał(a):</div><div class="quotecontent"><br />Wieć tutaj przypisujemy adres &quot;*str&quot; jako wartość &quot;*strp&quot; tak?<br /></div><br /><br />Tutaj to ustalamy, że wskaźnik o nazwie strp - będzie miał wartość wskaźnika str - czyli na starcie funkcji jeden i drugi będzie wskazywał dokładnie na tę samą komórkę w pamięci RAM<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 16 paź 2015, o 17:46</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[shark31]]></name></author>
<updated>2015-10-16T16:59:44+01:00</updated>
<published>2015-10-16T16:59:44+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13262&amp;p=142632#p142632</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13262&amp;p=142632#p142632"/>
<title type="html"><![CDATA[Re: Miernik napięcia/natężenia z BB.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13262&amp;p=142632#p142632"><![CDATA[
No dobrze ale mi chodzi o to czy dobrze rozumiem jak to się odbywa. Bo samo &quot;str&quot; bez &quot;*&quot; oznacza adres komórki wskaźnika, a &quot;*strp&quot; oznacza wartość w jakiejś komórce.<br />Wieć tutaj przypisujemy adres &quot;*str&quot; jako wartość &quot;*strp&quot; tak? A dalej w tej funkcji dzięki inkrementacji wartości pod wskaźnikiem &quot;*strp&quot; przechodzimy do następnych adresów w buforze?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=10356">shark31</a> — 16 paź 2015, o 16:59</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2015-10-16T16:04:22+01:00</updated>
<published>2015-10-16T16:04:22+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13262&amp;p=142630#p142630</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13262&amp;p=142630#p142630"/>
<title type="html"><![CDATA[Re: Miernik napięcia/natężenia z BB.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13262&amp;p=142630#p142630"><![CDATA[
<div class="quotetitle">shark31 napisał(a):</div><div class="quotecontent"><br />jako wartość przypisujemy mu adres tego pierwszego elementu tablicy &quot;bufor&quot;?<br /></div><br />Robimy kopię wskaźnika, żeby pod koniec funkcji go użyć ... zobacz że po drodze jeden z nich się zmienia a chcemy zwrócić jako rezultat funkcji wskaźnik na początek tegoż bufora <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 16 paź 2015, o 16:04</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[shark31]]></name></author>
<updated>2015-10-16T15:36:04+01:00</updated>
<published>2015-10-16T15:36:04+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13262&amp;p=142628#p142628</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13262&amp;p=142628#p142628"/>
<title type="html"><![CDATA[Miernik napięcia/natężenia z BB.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13262&amp;p=142628#p142628"><![CDATA[
Witam po raz kolejny:)<br />Mam problem z zrozumieniem funkcji do zamiany liczb &quot;int&quot; na znaki ASCI.<br /><br />[syntax=c]char *int_to_str(int val, char *str, int8_t fw, char znak_wiodacy) {<br />char *strp = str;<br />uint8_t subzero = 0;<br /><br />if(val&lt;0) {// jeśli liczba jest ujemna<br />val = ~val+1;// zaneguj i koryguj<br />subzero=1;// ustaw znacznik na 1<br />fw--;<br />}<br /><br />   do{<br />      div_t divmod = div(val, 10);   // opracja dzielenia oraz modulo - wynik do struktury ldiv_t<br />      //*strp++ = divmod.rem + '0';   // wstawianie cyfr od najmniej znaczącej do łańcucha<br /><br />      if((val == 0) &amp;&amp; (strp != str)) {<br />         *strp++ = znak_wiodacy;<br />      } else {<br />         *strp++ = divmod.rem + '0';<br />      }<br /><br /><br />      val = divmod.quot;            // wartość zmniejsza się o jednostki, dziesiątki, setki itd<br />      fw--;                     // zmniejszenie licznika szerokości formatowanego pola<br />      // wykonuj pętlę do momentu sprawdzenia ostatniej cyfry znaczącej lub zajętości całego pola<br />   } while ( (fw&gt;0)  );<br /><br />   if(subzero) *strp++ = '-';// jeśli była to liczba ujemna, wstaw znak minus<br />   *strp = 0;                     // zakończ łańcuch zerem<br /><br />   // w związku z tym, że w łańcuchu jest odwrócona kolejność cyfr<br />   // wykonaj ich zamianę<br />   strrev(str);<br /><br />   // zwróć wskaźnik do początku łańucha z liczbą<br />   return str;<br />}[/syntax]<br /><br />W sumie to zaskoczyl mnie zaraz sam początek czyli wskaźnik na funkcje, ale o tym spróbuje poczytać później, jakie ma to zalety, albo czemu użyto wskaźnika.<br /><br />Do funkcji przekazujemy 4 argumenty z czego drugi jest wskaźnikiem i z tym mam problem.<br />Przekazujemy do funkcji adres 1 elementu tablicy &quot;bufor&quot; i w pierwszej linijce definiujemy następny wskaźnik i jako wartość przypisujemy mu adres tego pierwszego elementu tablicy &quot;bufor&quot;? Dobrze rozumiem?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=10356">shark31</a> — 16 paź 2015, o 15:36</p><hr />
]]></content>
</entry>
</feed>