Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 2 kwi 2026, o 05:15


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 5 ] 
Autor Wiadomość
PostNapisane: 28 paź 2013, o 22:22 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 24 mar 2012
Posty: 72
Pomógł: 5

Cześć. Mam pytanie czy jest taka możliwość aby ustalić ilość elementów tablicy za pomocą operatora sizeof(). kompilator mówi "nie", a kiedy się zgodzi na kompilacje to wychodzą głupoty. Pytanie tylko, co źle robię? Podpowie ktoś?

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.




w miejscu słowa "TUTAJ" chciałbym aby znalazła się liczba która będzie ilością elementów tablicy która zostanie podana jako argument do funkcji check_sum(). w tym przypadku powinna być to liczba = 5.

Kiedy w miejsce słowa TUTAJ wpiszę sizeof(t) to w efekcie znajdzie się tam liczba = 1. w sumie nie ma co się dziwić bo "t" w tym przypadku to adres na pierwszy element tablicy. więc jak zrobić aby było dobrze?
Pozdrawiam. :)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 29 paź 2013, o 08:22 
Offline
Użytkownik

Dołączył(a): 16 maja 2012
Posty: 349
Lokalizacja: Legnica
Zbananowany użytkownik

Pomógł: 23

Może coś takiego zadziała?
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

ewentualnie
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Autor postu otrzymał pochwałę

_________________
sig off ;(



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 29 paź 2013, o 16:43 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 24 mar 2012
Posty: 72
Pomógł: 5

Dzięki perlon za odpowiedź ale to chyba nie zadziała, tak jak mówi squeez. Przekazuje adres na pierwszy element tablicy więc nie ma co się dziwić, że w efekcie dostaję liczbę jeden. Nie byłem szczególnie zaskoczony, że to nie działa ale myślałem, że znacie jakiś fajny trick.

Cytuj:
Najprościej to chyba dać jeszcze jeden parametr do funkcji w którym będziesz podawał ilość elementów w tablicy.

I tak też zrobiłem ale myślałem, że da się tak bardziej "elegancko" takie widzimisię.

Cytuj:
że robisz to na dynamicznym alokacji pamięci i tak nie do końca znasz rozmiar tablic
Nic z takich rzeczy. Nawet nie wiem o czym do mnie mówisz. Przekaże jeszcze jeden parametr.

Dzięki za pomoc. :)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 paź 2013, o 23:02 
Offline
Użytkownik

Dołączył(a): 17 sty 2013
Posty: 327
Lokalizacja: Białystok
Pomógł: 14

Kiedyś naskrobałem sobie taką funkcję do odczytu (niestety zajmuje czas dla procka)
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


robiłem to na szybko i daawno temu ale działa ;)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 paź 2013, o 23:14 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27450
Lokalizacja: Szczecin
Pomógł: 1045

można byłoby tą funkcję dlugosc_napisu() mocno uprościć zamieniając ją na wbudowaną

strlen()

;)

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 5 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 17 gości


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO