Witam, zająłem się ostatnio wskaźnikami i chyba sporą ich część już ogarnąłem co do zasady ich działania. Teraz doszedłem do momentu kiedy zacząłem zadawać sobie pytanie czy jest coś takiego jak przekazanie jako argumentu funkcji wskaźnika ale w sytuacji kiedy używam wskaźnika do tej funkcji. I przy tej okazji drugie pytanie, jakie są zalety stosowania...
Witam! Są następujące przypadki: - Jeśli np zmienna zewnętrzna została zadeklarowana w innym pliku, wówczas w bieżącym pliku musi wystąpić potwierdzenie tejże deklaracji poprzedzone klasą pamięci extern. - dotyczy funkcji w starszych wersjach języka C (K&R). Jeśli definicja funkcji nie jest poprzedzona typem to kompilator przyjmuje domyślnie, że typem...
Witam, mam pytanie, ponieważ namieszałem już tak bardzo, że sam nie wiem o co chodzi... (1) Załóżmy, że mam kilka deklaracji funkcji: void f_1(void); ... void f_5(void); (2) Następnie mam deklarację łańcuchów, umieszczonych w pamięci Flash: char f_Command1[] PROGMEM = "01"; ... char f_Command5[] PROGMEM = "05";...
Kompilator zgłasza błąd ponieważ, ze względu na sposób deklaracji wskaźnika do funkcji, stwierdza że próbujesz przekazać do bezargumentowej funkcji, dodatkowe dwa argumenty. Musisz prawidłowo zmodyfikować deklarację wskaźnika. Jeżeli funkcja nie będzie zwracała żadnej wartości, może to wyglądać tak: void (WINAPI *funkcja)(char *arg1, char...
Cześć, void dupa() { ; } int main() { dupa(); int test; //FILINFO Info[1000]; while(1) { ; } return 0; } Jeśli odkomentuję deklarację tablicy FILINFO Info , to przy wejściu do funkcji dupa(); wyskoczy wyjątek, który przenosi sterowanie do HardFault_Handler() . Dzieje się tak niezależnie...
W pierwszym przypadku podejrzewam, że błąd kompilatora spowodowany był brakiem deklaracji funkcji przed funkcją main. Ale ten kod i tak nie zadziała, bo w funkcji działasz na kopii zmiennych podanych w parametrach. Drugi sposób powinien zadziałać jeśli poprawisz nazwę "width". W parametrach (deklaracji) funkcji możesz używać const, co spowoduje, że...
Witam, mam krótkie pytanko. Od jakiegoś czasu korzystam z bibliotek HAL i ostatnio stwierdziłem, fajnie by było posprzątać w main.c. HAL po wygenerowaniu kodu podpina w mainie wszystkie funkcje konfiguracyjne np. [syntax=c] void SystemClock_Config(void) { RCC_OscInitTypeDef RCC_OscInitStruct; RCC_ClkInitTypeDef RCC_ClkInitStruct; /**Configure the main...
Funkcja send (), której używasz w WebServer::init () ma nastepującą deklarację: AwsTemplateProcessor , który jest zdefiniowany jako: String MojaFunkcja(const String& param) . Jednakże w Twoim kodzie podajesz funkcję String WebServer::processor(const String& var) - to są dwa różne typy w C++. Funkcja String F(const String&) to nie to samo,...
Witam jestem początkującym w programowaniu w C#. Pieszą program do komunikacji przez Port Szeregowy, w którym chciałby użyć mojej klasy Terminal z funkcją zwrotu aby móc z zewnątrz klasy dopisać swoją funkcje do wysyłania danych. Poniżej zamieszczam kod: [syntax=csharp] public delegate bool DelegateWysliDane(Terminal Port, int[] dane); public class...
Cześć Wiem że temat jest delikatnie mówiąc już nie świeży, ale pomimo postów które znalazłem w internecie nie mogę do tego dojść samodzielnie. Korzystam z Semihostingu na uC STM32F411 płytka Discovery, programowana przez ST-Link. Semihosting udało mi się uruchomić: Flagi w Properties->C/C++ Build->Settings->MCU G++ Linker -> Miscellaneous : Linker flags:...
W celach dydaktycznych napisałem sobie taki programik: #include <iostream> #include <time.h> using namespace std; unsigned long long silnia_ite(int x); unsigned long long silnia_rek(int y); int main() { int n; clock_t start, stop; double czas; cout << "Podaj n (maksymalnie 20): ";...
Witam, może dziwny tytuł mojego pytania ale już mówię co chciałbym uzyskać a nie mogę: otóż mam już własne pliki z funkcjami do obsługi LCD: - lcd.h - lcd_hardware.h - lcd.c oczywiście do pliku głównego z funkcją main dodaję pliki nagłówkowe *.h a do pliku projektu lcd.c i wszystko ślicznie działa. Jednak widzę, że kompilują mi się funkcje zdefiniowane...
Wzorując się na temacie: Próbuje stworzyć funkcję w pod zadanym obszarem w następujący sposób: int funtest(int i)__attribute__ ((section(".boot_sectio... int funtest(int i) { /* cos tam */ return 1; } przy czym plik linkera wyglada tak: MEMORY { rom (rx): org = 0x08000000,...
Używam AVR Studio + język C Mam projekt składający się z kilku plików z kodem. Dla uproszczenia problem pokażę na 2 plikach: C_DDT_v1_0_main.c C_DDT_v1_0_funkcje_inicjujace.c C_DDT_v1_0_main.c wygląda tak: #include <avr/io.h> void main(void) { DDRC|= (1<<DDC5); while (1) { /* dalsza część programu która...
Witam Mam problem z przerwaniem INT0. Mianowicie. Funkcję obsługi przerwania umieszczam przed "main", gdyż inaczej kompilator się nie kompiluje. Gdy funkcja obsługi przerwania jest pusta wszystko jest ok- tj ustawienie wszystkich bitów w rejestrach. Jeśli do funkcji obsługi przerwania "wrzucę" inne funkcje to wszystko się psuje. Dostaję błędy w postaci...
Używam tej funkcji i działa prawidłowo, ale nie mam deklaracji prototypu funkcji, więc zgłaszane są ostrzeżenia: warning: implicit declaration of function 'memcpy' warning: incompatible implicit declaration of built-in function 'memcpy' Wszystko działa ok, ale chciałbym to wyczyścić. Nie wiem też w jakim pliku są tego typu deklaracje funkcji z opisami....
Witam. Tak się zastanawiam, jak tak naprawdę powinno się deklarować funkcję główną main w c++? Jeżeli int main(){} to zawsze ona zwraca return 0, jeśli kod jest poprawny. Ale można też jako void main(){}, lub można też bez typu czyli po prostu main(){}. Jaka jest między nimi różnica? Po co aż trzy różne sposoby? W projekcie może być tylko jedna funkcja...
[syntax=c] #include <avr/io.h> #include <avr/interrupt.h> #include <avr/pgmspace.h> #include <util/delay.h> #include <avr/pgmspace.h> #include <avr/eeprom.h> #include "hd44780.h" #define LED_DATA PORTD //port pod kt�ry pod��czony jest wy�wietlacz LED #define LED_DATA_DIR DDRD//kierynek...
Dziękuję. Faktycznie, nie była dodana ta biblioteka. Ale swoją drogą - to dziwne, bo atoi i kilka innych funkcji z tej samej biblioteki działało poprawnie... Deklaracje funkcji są w tych samych plikach ale same funkcje są w róznych bibliotekach. Operacje na float'ach przeniesiono do oddzielnej biblioteki.
Witajcie, Szukałem troszkę po googlach, ale nie mogłem znaleźć satysfakcjonującej mnie odpowiedzi. Mianowicie chodzi mi o deklaracje funkcji w następujący sposób: void funkcja(char param, ... ); i teraz jak w definicji można się dobrać do parametrów "..." i w jaki sposób gcc to interpretuje ( asm - ogólnie ideowo )? Tłumaczę do czego jest mi...
void stat(int *t, int n, int (*fun1)(int), int (*fun2)(int),int (*fun3)(int), int(*fun4)(int)); int suma(int *tab, int n) Przyjrzyj się dokładnie deklaracji wskaźnika na funkcję i nagłówkowi samej funkcji, czy wszystko się zgadza?
Witam serdecznie. Piszę program w ANSI C na temat kodowania i dekodowania wpisywanego z klawiatury zdania. Zdanie to jest zapisywane do pliku jako oryginał a także (po uruchomieniu funkcji rc4) zapisywane jako kod. Najprawdopodobniej mam problem z przekazywaniem parametru z funkcji main do funkcji rc4. Pojawia się błąd access volation. Nie jestem w...
tworzymy typ - strukturę [syntax=c] typedef struct{ uint8_t x:2 uint8_t y:3 uint8_t z:3 uint8_t a } boo boo wuu [/syntax] Czy da się zrobić tak by do funkcji przekazywać argumenty wuu.x (dwa bity) i wuu.a (osiem bitów) a w wyniku funkcji otrzymać a/ wuu.x ? b/ wuu.a ? Innymi słowy czy deklaracja funkcji musi w tym wypadku być : [syntax=c] boo foo(boo...
Witam, chcąc sterować pewnym urządzeniem wysyłam komendy, poprzez funkcje z biblioteki, która została dostarczona przez producenta. Jedna tych z tych funkcji/komend nie chce się wykonywać. Podejrzewam, że jest to spowodowane złym doborem jednego z argumentów. Deklaracja funkcji: void ble_cmd_gap_set_adv_data( uint8 set_scanrsp, uint8 adv_data_len, const...
Jak zrobić aby moduł zewnętrzny widział handlery funkcji przerwań które są umieszczony w module głównym? Np. tak: Czy można przenieść funkcje przerwań z całym ich kodem do modułu zewnętrznego? Dlaczego miałbyś nie móc przenieść (jeśli dobrze rozumiem Twoją definicję "modułu zewnętrznego")? Robisz plik z deklaracjami funkcji (.h) i plik z implementacją...
Witam! Nie jestem biegły w BASCOM-ie i mam problem z funkcją, w której chcę uzyskać resztę z dzielenia. Oczywiście operuję na liczba które mają wartość po przecinku tak więc użycie funkcji mod nie wchodzi w grę. Moja funkcja wygląda tak : [syntax=jezyk_programowania] ' wczesniej w zmiennych globalnych jest zdeklarowane dim L as single, l1 as single,...
Czy ktoś potrafi mi wyjaśnić drogę programu od napisania do umieszczenia w mikrokontrolerze ? kompilator odkłada funkcjie main na stosie ? co się dzieje np. z takim zapisem : int wyw(4,5); // deklaracja funkcji wyw int main(void) //Co się dzieje z funkcją i jej ciałem gdzie ona trafia proszę o schemat tego procesu { int zmienna=5;...
Witam! Uczę się programowania mikrokontrolerów STM32 (aktualnie męczę STM32F103). Programy piszę w C, ale co jakiś czas zerkam w to co spłodził kompilator - w celach edukacyjno-poznawczych. Napisałem prostą funkcję obsługi przerwania od SysTicka. Deklaracja funkcji ma postać: [syntax=c]void SysTick_Handler(void) __attribute__((interrupt));[/syntax]...
Po coś do funkcji delta2 włożył: int delta(int liczbaa, int liczbab, int liczbac) wywal to. Jak chcesz żeby wynik1 i wynik2 użyć po wywołaniu funkcji (np w funkcji main) to użyj referencji. Czyli w deklaracji funkcji: double &wynik1, double &wynik2
Tablic nie są przesyłane do funkcji poprzez kopiowanie jak zmienne typów fundamentalnych, tablica to typ złożony z typów fundamentalnych. Tablice mogą być duże i dlatego nie są kopiowane a do funkcji wysyłany jest adres owej tablicy. Także jako taka funkcja pracuje na oryginalnym egzemplarzu tablicy wysłanej do funkcji. Funkcja może zwracać wskaźnik...
Czy atrybut always_inline nie daje dokładnie tego samego, co wklejenie kodu tych funkcji do procedury obsługi przerwania? Zależy od miejsca deklaracji tychże funkcji. Atrybut oznacza jedynie, że inlinowanie ma nastąpić zawsze, nawet gdy globalnie inlinowanie funkcji jest wyłączone (np. optymalizacja o0).
Prosiłbym o wspólne przeanalizowanie tego kodu i poprawienie mnie w miejscach gdzie się mylę. Kod napisany przez gaskoin : [syntax=c] typedef struct Blower Blower; typedef struct { void (*handle)(Blower*); } BlowerState; struct Blower { int power; BlowerState *state; }; void blower_idle_state_handler(Blower*); void blower_mega_state_handler(Blower*);...
Witam Mam pewien problem z poprawnym zapisem deklaracji funkcji zwracajacej wskaznik do typu 3 int. Kompilator ciągle wyrzuca mi błąd, a już mi się pomysły kończą. W sieci nie mogę znaleźć żadnych przykładów. Przekazuje do funkcji podtablice 3 int i chce taki sam typ zwrocic czyli wskaznik do 3 int. Jest w ogole mozliwe cos takiego? No bo zapis int**...
INT0_vect oraz ISR() to makra.Rozwija się to mniej więcej tak [syntax=c]void portchenge( void ){ __vector_1(); } void __vector_1(void) __attribute__((signal,used)); void __vector_1(void) { PORTB = 0x01; }[/syntax] Przy wywołaniu w funkcji portchange() kompilator nie miał wcześniejszej deklaracji funkcji __vector_1 więc przyjął że funkcja zwraca wartośc...
Fajno Aby uniknąć dziwnych błędów, wskaźniki do rejestrów( albo po prostu wszystkie wskażniki już w deklaracji funkcji) oznacz jako 'volatile'. Kompilator będzie je czytał przy każdym odwołaniu( zawartość zmienia się niezależnie od niego). I chyba można kliknąć kłódeczkę Owocnego ;) kac
Konwertuje typ na char * czyli taki jak jest w deklaracji funkcji. W tym konkretnym przypadku pomiędzy typami unsigned char[] a char * nie robi w zasadzie nic poza pozbyciem się ostrzeżenia.
Witam. Mam następujący problem: chcę przekazać do funkcji sumującej, tablicę ze strukturą. Tyle ze nie bardzo wiem jak. Mam cos takiego: #include <cstdlib> #include <iostream> using namespace std; struct struktura { char nazwa_p[20]; int ilosc_p; float cena_n; float cena_b; }; [b]int liczy(struktura* tablica)[/b]...
No i której części tego komunikatu błędu nie rozumiesz? To chyba logiczne, że jak jest deklaracja i definicja funkcji, to muszą być zgodne (identyczne), a nie w jednym miejscu uint8_t, a w drugim uint32_t... 4\/3!!
Widze że kolega wie, że trzeba dodać -lm (co dla mnie nie jest takie oczywiste) oraz #include<math.h> , a nie wie o deklaracji swoich funkcji ;)
Nie rozumiem pewnego zjawiska, które mi się przytrafiło. Otóż mam program główny w pliku main.c, przerwania mam w pliku irq.c (irq.h) oraz mam plik gui.c (gui.h). I mam taki problem. Mam zmienną globalną volatile uint32_t adc_r zadeklarowaną w pliku main.c. W pliku irq.h jest ona zadeklarowana jako extern bo korzystają z niej funkcje z pliku irq.c....
Strasznie namotane. Warto zawsze określić typ wartości zwracanej przez funkcję główną. Między deklaracją funkcji a klamrą otwierającą jej zawartość nic nie powinno być. Tu masz poprawiony kod: [syntax=cpp]#include "stdafx.h" #include <iostream> #include <conio.h> int main() { using namespace std; int nLiczba; cout << "Wprowadz liczbe:...
Mam taki dziwny problem. Sądzę, że to siedzi gdzieś w deklaracji funkcji, ale nie mam pomysłu o co może mu chodzić. Wstawianie po prostu tekstu działa OK, liczniki OK, natomiast przy wpisywaniu funkcji do komórki idzie mi parzystymi wierszami (co drugi!) i nijak nie mogę tego zmienić. Czyli nieprawidłowo liczy R[" & NrWiersza & "]. Prościutki...
Druga sprawa, że jeśli tablica jest we FLASH to żadne z tych wywołań nie powinno zwracać prawidłowych elementów, bo dostęp do nich jest nieprawidłowy - dane są czytane z SRAM a nie z FLASH. A skąd pewność że jakikolwiek odczyt ma miejsce? Obstawiam, że kompilator/linker sobie to optymalizuje (bo po co czytać skoro wartości mam podane na tacy?). Co...
Cześć! Chciałem się zapytać o dobre nawyki, a dokładniej o kolejność deklaracji funkcji. Wiem, że w klasie deklaruje się następująco: Kolejność deklaracji w klasie: najpierw elementy publiczne, potem prywatne (public, protected, private). W obrębie każdej sekcji powinna być zachowana następująca kolejność: Deklaracje typów (typedef, enum) ...
Więc dlaczego uważasz, że to są jakieś czary? Podstawową zasadą C/C++ jest to, że funkcja musi być zadeklarowana przed pierwszym użyciem. Czy się to dzieje na początku pliku czy tuż przed użyciem nie ma już specjalnego znaczenia. Kompilator C++ w skrócie działa tak, że potrzebuje poprawnego prototypu (deklaracji) funkcji przed użyciem. Zwykle robi się...
po nazwach funkcji i z kodu wynika że to jakiś Wall-hack do gierki Counter Strike 2. Co do błędu to brakuje pliku nagłówkowego, w którym są deklaracje funkcji "get_glow_entry_*".
Biblioteki się importuje import java.lang.math; i umieszcza na początku kodu przed deklaracjami klas.
Witam ponownie, DSB - tak masz racje Merke to najlepszy sposób to przekazywania wartości ale nie o to mi chodziło. Zmienne temp wywoływane w poszczególnych funkcjach mają jeden wspólny mianownik. mianowicie adres który traktowany jest w FB i FC jako wspólny. ELMapet - oczywiście, że funkcje są wywoływane jedna po drugiej miałem na mysli iż w tym samym...
okej rozwiązałem to, przerobilem tak, że po otwarciu każdego pliku z osobna za pomocą makra używana jest funkcja. tylko wyszedl z tego jeden problem chyba łatwiejszy w rozwiązaniu. Mianowicie: Klient raz pisze w kolumnie B10: NIP: 7777777777 a raz pisze 7777777777 a raz pisze NIP: 777-77-77-777 Próbowałem tak się z tym uporać: If Range("D1") = "-oo-oo-ooo"...
W zasadzie Twoja deklaracja jest poprawna. Mam tylko uwagę dotyczącą typów argumentów. Jednak nie uprzedzając faktów, po kolei jak to się stało, że tak, a nie inaczej. Najpierw deklaracja typu zwracanego przez funkcję na którą pokazujemy naszym wskaźnikiem: zwracajacej: wskaznik do funkcji przyjmujacej dwa argumenty typu double i zwracajacej wartosc...
Witam. Mam (zdaje mi się) bardzo dziwny i jeszcze bardziej irytujący problem. class A{ public: int x; } class C; class B{ protected: A *a; C *c; public: void cos(){ a->x=1; //działa c->y=1; //nie działa } } class C{ public: int y; } Nie mogę pojąć dlaczego mimo deklaracji klasy C...
Mam napisany prawie cały program ale niestety źle są liczone wartości funkcji co oznacza zle rysoawny wykres praktycznie w tym samym miejscu za każdym razem w tym mam największy problem może ktoś wie jak to poprawić?:| Oto moj kod programu (parabola) main #include <cstdlib> #include <iostream> #include <graphics.h> #include "deklaracje.h"...
Witam Mam program, który wyświetla na LCD współrzędne oraz prędkość ( prędkości jeszcze nie sprawdzałem w terenie ) oraz zapisuje na karcie SD. Na razie zapis na SD jest ręczny, przez przycisk. Chciałbym żeby zapis dokonywał się ze zmienną częstotliwością zależną od szybkości, (szybkość mam jako String i Integer), np: 0 km/h - co 30 minut 0- 10 km/h...
Pierwsze użycie funkcji sseg_conversion() masz przed jej definicją. Aby deklaracja funkcji jako inline działała zgodnie z oczekiwaniem, jej definicja powinna się znaleźć przed jej pierwszym użyciem. Wywołania funkcji występujące przed definicją nie mogą zostać potraktowane jako inline, bo kompilator jeszcze nie wie jak rozwinąć tę funkcję, pozostaną...
Witam Wiem, że temat przycisku jest mocno nadwyrężony, ale ... Program ma jednym przyciskiem przy dłuższym przytrzymaniu zwiększać i zmniejszać wartość wyjścia PWM ( na zmianę ) lub przy krótszym włączyć/wyłączyć, czyli pwm1a = 0 lub pwm1a = 255. Każda z tych funkcji osobno działa ok, ale razem działa tylko włącz/wyłącz przy krótszym przytrzymaniu W1,...
Witam! A'propos "przytyku" Wszystko zawarłem w pierwszej odpowiedzi. Koledzy chyba posto-nabijacze ? A to fragment cytowanej, Twojej pierwszej odpowiedzi: 1. Pobierasz rozmiar tablicy przy użyciu scanf("%d", &rozmiar) zmienna rozmiar jest typu całkowitego. Skoro pobiera się rozmiar tablicy przy pomocy funkcji scanf od razu zakładam, że rozmiar tablicy...
Witam! t_f jest wskaźnikiem do I-elementowych tablic typu (typ) [syntax=c]int main(void) { void nowa_plansza(pole *(*)[11]); // deklaracja zapowiadająca, inaczej: prototyp funkcji pole *tab[11][11]; // zadeklarowana tablica lokalna // Teraz wywoływana jest funkcja do której jest przekazana tablica lokalna tab nowa_plansza(tab); return (0); } /* Parametr...
Witam Jaka jest zasada deklaracji PINów w Arduino? Potrzebuję zadeklarować kilka wejść i wyjść, kompilacja dokonuje się bez błędów, natomiast kod się nie wykonuje. Konfiguracja pinów i setup wyglada że są poprawne. Na jakiej podstawie twierdzisz że 'kod się nie wykonuje'? Dla jakiej płyty robisz kompilację, a dla jakiej płyty wykonujesz test(?). Jeżeli...
Dostałem odpowiedź z "ministerstwa", ale niestety instrukcje nie rozwiązały problemu: `W odpowiedzi na zgłoszenie informujemy, że w przypadku błędu 3001 w aplikacji e-Deklaracje Desktop, należy w „Ustawieniach programu” aplikacji użyć funkcji „Oczyść” a następnie „Zapisz ustawienia”. Wykonanie tej operacji spowoduje...
przy prubie wyskoczyła taka informacja W takim razie serdecznie zwracam honor w kwestii zdublowanego posta. A gniewem obarczam w zamian silnik (i ustawienia) elektrody ;) jesli masz zamiar dalej się wywyższac zamiast pomuc (...) pomuc (...) nakierowaqc (...) po 3 tygodniowej walce Tak, mam zamiar dalej "się wywyższać" i wytykać błędy, bo czy nie przez...
Witam. Podane deklaracje mozna odczytac w ten sposob: char (*(*x())[]... bezargumentowa funkcja 'x', zwracajaca wskaznik do tablicy wskaznikow na bezagrumentowa funkcje zwracajaca wartosc typu char (znak). Przyklad tej deklaracji podany raczej jako ciekawostka. Kolejnosc czytania takich struktur opiera sie na...
Nigdy tego nie robiłem z rozrzutności, ale teraz chcę zoptymalizować troche swój program. Deklaruje zmienne będące flagami determinującymi różne warunki w jakiejśc tam nieskończonej pętli programu. Flagi są ustawiane przez procedury, funkcje lub przerwania. Dim flaga1 as Byte Dim flaga2 as Byte ... Dim flaga8 as Byte Zajmuje mi to 8 bajtów. Czy zmiana...
Napisałem program,ale nadal nie działa. Prosze o podpowiedzi. #include <stdio.h> #include <stdlib.h> //int i; //zmienne globalne są złe. nie używaj ich //static int wynik; // wynik nie musi być static. Jeżeli już to powinien być static int wynik = 1; inaczej wynik *= liczba ma wartość 0. //int liczba; //zmienne globalne są złe. nie używaj...
Tworze wykresy dynamiczne, w celu uniknięcia migotania przy przeskalowaniu wykorzystuje klase: Graphics::TBitmap* bitmap=new Graphics::TBitmap; cos tam rysuje do bitmap następnie Form2->Canvas->Draw(0,0,bitmap... delete bitmap; To wszystko robie w ciele jednej z funkcji. W dalszym ciągu chciałbym móc powiększać prostokątnym...
No masz błąd - bo np w pliku nagłówkowym *.h DEFINIUJESZ zmienną strukturalną :( a tak się nie robi, w nagłówkowych powinny być SAME DEKLARACJE a nie definicje (no może poza funkcjami inline - ale to inna sprawa) Zrób sobie tak w *.h Dodano po 1 zresztą jeśli to jest prosty projekt i tylko te dwa pliki to nawet w *.h nie musisz dawać DEKLARACJI [syntax=c]extern...
Przeczytaj ostrzeżenie dotyczące linii b = average(... Kompilator zapewne ostrzega Cię w tej linii o niejawnej deklaracji. W tym momencie następuje deklaracja average jako zwracającej int. Dobry zwyczaj - definiuj funkcje powyżej miejsca, w którym ich używasz. A w ogóle to wiesz, że ta funkcja nie ma sensu w takiej postaci?
Obsługa maszyn stanów/automatu, pseudo-biektowość (polimorfizm), lepsza hermetyzacja i kapsułkowanie modułów i itp. Charakter takiego podejścia oddaje przykład. W metodach exec możesz zrobić obsługę komend, znaki razem z '\0' terminatorem na końcu, posłużą przy parsowaniu. Wystarczy stworzyć strukturę zawierającą string z nazwą komendy oraz przypisaną...
scanf wymaga wskaźnika (pointer), bo inaczej wartość argumentu została by skopiowana do ciała funkcji scanf i nie mógł by tej konkretnej zmiennej (w ciele main() -> long double a) nadpisać. Mam nadzieję że zrozumiale to napisałem. Poprawnie działanie: scanf kopiuje adres wskaźnika argumentu -> następnie nadpisuje wartość na którą pokazywał ten wskaźnik...
Jeśli oczekujesz pomocy na forum, to prześlij plik z kodem i przykładowymi danymi, żeby można było przetestować. Ten obrazek jest zupełnie nieczytelny i tylko z komunikatu należy wnosić, że typ danych przekazywanych do funkcji jest niezgodny z deklaracją. Z opisu w linku, który Ci podałem widać, że niezbędne zmiany nie ograniczają się do samego nagłówka...
Nie wiem jak jest z mikroprockami, ale czy deklaracja zmiennej LICZ_PRZER nie powinna wygladać tak: static uint8_t LICZ_PRZER=0; Bo na PC jak sie programuje sie w C++ i przy deklaracji zmiennej nie ma przypisanej odrazu liczby, to ta zmienna może przyjmować dowolną wartość :|
Mam problem z definicją właściwości klasy. Przy definiowaniu zmiennych w pliku .c wywala: "cannot convert 's_LcdTask*' to 's_LcdTask cLcdLocalRtl::*' in initialization" Oto moje pliki: lcd_local_rtl.class.h typedef struct s_LcdTask { uchar Code; uchar IsData; }; #include "lcd_local.class.h" #define LcdBuforSize 30 class cLcdLocalRtl...
Sprawa wygląda tak, że mam bibliotekę DLL, która sczytuje dane po porcie RS-232 z oscyloskopu i zapisuje je do excela. Nie mam żadnej dokumentacji do tej biblioteki za wyjątkiem programu w VBA pod excel. Chcę zaimportować tą bibliotekę pod Borlanda i używać jej normalnie w programie i tu pojawiają się schody. Niby biblioteka się importuje, ale nie sczytuje...
Witam, Brakuje ci deklaracji odpowiednich bibliotek. Musisz dodać: library unisim; use unisim.vcomponents.all; Możesz wtedy usunąć deklarację componentu gdyż jest zawarta w bibliotece. Teraz już będzie działać. Pozdrawiam JarekC
Użyj instrukcji SELECT CASE zamiast tylu if'ów po sobie. Moim zdaniem ten program nie zadziała - zakładając że ma działać jak zwykły kalkulator. Weźmy przykład jak wciskam w kolejnych krokach: 2 + 3 = początek) wynik.Text = "" 1) wciskam 2: wynik.Text = "2" 2) wciskam +: wynik.Text = "2+", zapamietaj.Text = "2" 3) wciskam 3: wynik.Text = "2+3" 4) wciskam...
Pomocna będzie informacja, gdzie kompilator wykrył ten błąd: czy przy definicjach, czy przy wywołaniu? Ponadto warto używać typedefów do uproszczenia deklaracji. _closure występuje w pierwszej deklaracji, którą zapisałeś. Jeśli możesz, opublikuj minimalny kod, który można skompilować, a który produkuje ten błąd. Dariusz
Nie mam pewności czy dobrze to sobie wykombinowałem, a nie mogę teraz w literaturze znaleźć informacji na ten temat. Widziałem też że przy deklaracji stałych stosuje się taki zapis np: [syntax=c] #define 12000000UL [/syntax] i nie mam pewności czy w wymienionym w poście wyżej przypadku nie powinienem tak zrobić, skoro operuję w tych deklaracjach na...
Witam, Spotkałem się z bardzo dziwną sytuacją. Mianowicie, podczas deklaracji globalnej zmiennej tablicowej program nie działa. [syntax=c] char * Tablica[2]; int main( void) { } [/syntax] Jeśli w programie występuję deklaracja tak jak powyżej program zamiast wskoczyć do funkcji main() przerywany jest i obsługuje go przerwanie: NMI_Handler Jaki może...
Zmień deklaracje: [syntax=vbnet]Dim objOutlook As Outlook.Application Dim objOutlookMsg As Outlook.MailItem[/syntax] na [syntax=vbnet]Dim objOutlook As Object Dim objOutlookMsg As Object[/syntax] Poniższe dwie deklaracje zakomentuj (nie widzę, żeby były gdzieś użyte): [syntax=vbnet]Dim objOutlookRecip As Outlook.Recipient Dim objOutlookAttach As Outlook.Attachment[/syntax]
Nie podałeś rozmiaru tablicy przy deklaracji wskaźnika, zadeklarowłeś zmienna "len" ale nie podałeś wielkości. Wielkość tablicy możesz wpisać jak przy deklaracji.
No to masz źle skonfigurowaną drukarkę.. skoro wcześniej mówiłaś że masz program ustawiony na IBM to tak samo trzeba ustawić drukarkę (do tego służy właśnie ta opcja ) Masz tam ustawione EPSON a powinna być IBM PPR, albo w innej wersji "Proprinter" to powinno pomóc na tą przewijającą się drugą stronę. Co do tych 18 mm to na pulpicie drukarki masz klawisze...
... mimo to, miło by było dostać kawałek programu z jakimś komentarzem... Co do manuala [handbuch] , to nie wszystko jest takie oczywiste... ale po wielu próbach w końcu mi się udało.. (poprawnie wywołać funkcję load_tool) Ale jeśli chodzi o przykłady (example) to mam tylko w C++... więc za wiele z nich nie skorzystam.. ... dlatego ponawiam prośbę o...
Witam Natknąłem się na taki oto problem korzystając z coIDE (od kilku dni używania): Zadeklarowałem sobie tablicę zmiennych globalnych wstępnie ustawionych np: [syntax=c] unsigned char tab[10]={1,2,3,4,5,6,7,8,9,0}; [/syntax] w głównej pętli programu chcę odczytać zawarte w tablicy dane i je zmodyfikować. Niestety okazuje się, że podczas odczytu w tablicy...
Zacząłem pisać progs w BASCOMIE. tak się przedstawia jego listing: ---cut here--- Config Portb = Output Config Portd = Output 'konfiguracjaportów Dim Adress As Integer Dim Command As Integer Dim Licznik_kol As Integer Dim Licz As Integer Declare Function Wyswietl_bajt(bajt1 As Byte) As Byte Declare Function Czytajrc5() As Byte Licznik_kol = 0 Function...
Problem czesciowo rozwiazalem deklarujac funkcje EnumWindowsProc jako statyczna, wtedy nie wywala bledu i funkcja EnumWindows ja wywoluje. Jednak nie mage wstawic do ciala funkcji EnumWindowsProc zadnych zmiennych aby zwrocony wskaznik HWND zapamietac ,wyzuca blad nawet ja to sa zmienne statczne: dupa error LNK2001: unresolved external symbol "public:...
Jeśli chcesz wywołać z funkcji umieszczonej w dll'u funkcję callback podaną jako parametr, no to właśnie można to zrobić tak jak napisałem wyżej. Deklaracja typu TCallback musi być znana zarówno w dll'u jak i w programie głównym. Funkcja f powinna być zadeklarowana i wyeksportowana w dll'u. W programie głównym trzeba zdefiniować funkcję typu TCallback...
Witam Czy może ktoś sprawdzić działanie funkcji ftoa w ICC AVR? Deklaracja jest w stdlib.h i wygląda tak: /* ftoa function */ #define _FTOA_TOO_LARGE-2/* |input| > 2147483520 */ #define _FTOA_TOO_SMALL-1/* |input| < 0.0000001 */ /* ftoa returns static buffer of ~15 chars. If the input is out of * range, *status is set to either of the above #define,...
Funkcja sprintf znajduje się przeważnie w bibliotece...... Kod: #include <stdio.h> Oczywiście jest dołączona? Zgadza się, funkcja sprintf jest zdefiniowana w pliku nagłówkowym stdio.h . Jednak błędy linkowania, które zostały zacytowane, nie mogą wynikać z braku inkludowania tego pliku - w takim wypadku wystąpiłby błąd na etapie kompilacji. Błędy...
Witam, mam takie pytanko do speców od Bascoma, otóż zdeklarowałem sobie funkcję: Declare Function Scanstrsp(text As String , Byval Sep As String) As String potem jej "ciało" Function Scanstrsp(text As String , Byval Sep As String) As String Local I As Byte Local M As Byte I = 1 While I <= Len(text) If Mid(text , I , 1) <>...
Hmm, zarówno zmiana optymalizacji, jak i dodanie atrybutu nie pomogło. Próbowałem nawet wywalić deklarację z pliku h, i w każdym pliku c dodawać extern inline void funkcja( void ); , żeby poszukał funkcji na zewnątrz, co prawda kompilacja przebiegała bez błędu, jednak dalej funkcja nie była rozwijana. N.B. to kompletnie bez sensu. Kompilator...
Witam. Mam problem z 2 programami. Jestem zupełnie początkujący, a wymagania doktorów są ogromne. Więc: 1. Powstał projekt #include <stdlib.h> #include <time.h> #define ROZM_TABL 20 #define LICZBA_LOS_MIN 0 #define LICZBA_LOS_MAX 100 /* ------------------------------ */ double srednia(int tabl[], int nelem); int minIndex(int...
../b1.c:441: error: label at end of compound statement Dostaję to przy kompilacji :( . Używam często etykiet (taki styl) i potrzebuję mieć na końcu procedury/funkcji jedną co AVR Studio uważa za błąd i generuje co widać powyżej. Co z tym zrobić - jak przekonać kompilator albo czym to zastąpić? Czy jest jakaś specyficzna instrukcja przerwania wykonywania...
Zasadniczo po pierwsze, do funkcji można przekazywać nie tylko wskaźniki, ale i tablice: void func(uint8_t array[][6]) { ... } Podobnie jak przy deklaracji samej tablicy - można pominąć "skrajnie lewy" wymiar. Spróbuj czy takie coś by nie działało jeśli dodasz atrybut PROGMEM do tego parametru. Po drugie zaś - parametr PROGMEM musisz podać również do...
nieulotna to volatile ... Jesteś pewien, że "nieulotna"? oczywiście, że ulotna - mój czeski błąd - słuszna twoja uwaga Dodano po 10 volatile - obojętnie gdzie to tylko wskazówka dla kompilatora, aby nie optymalizować no pewnie, że masz rację że można dać obojętnie gdzie słówko volatile jeśli chodzi o zmienną - tylko nie mów, że wszędzie je dajesz?...
Nie wiedzieć czemu, opcja long_call musi być dodana zarówno w deklaracji jak i w definicji, więc "na górze" zostaw jak masz, a na dole dostaw kompletny zestaw "__attribute__ ((...))" między "void" a nazwę funkcji. Dodam też, że w pliku *.map nie ma wylistowanych w takim przypadku funkcji umieszczonych w RAM, za to będą widoczne w pliku *.dmp. Widać...
Witam forumowiczów, jest to mój pierwszy post na elektrodzie, więc proszę o wyrozumiałość. Od jakiegoś czasu pisze programy w C++,jestem samoukiem. Wpadłem na pomysł napisania gry.Znalazłem dość przyzwoitą bibliotekę : Allegro, do projektów 2D. Do rzeczy, podczas pisania natrafiłem na problem, problem z kolizją, czasem zachodzi, a czasem nie.Funkcje...
|Witaj przemo po przerobieniu tego co zrobiłem już wcześniej nadal wywala mi ten sam błąd //--------------------------------------... #include <iostream> #include <vcl.h> #include <conio.h> #include <stdio.h> #include <math.h> //--------------------------------------...
Polecam zaprzyjaźnić się z debuugerem. Pomaga na zgryzoty :D Wstawiasz break ("czerwone kółko") na początku obu funkcji, ale nie przy deklaracji zmiennych (klikając na szarym polu po lewej stronie kodu). Potem robisz jakąś akcję w excelu, np. zmieniasz arkusze, i kiedy program zatrzyma wykonywanie w zaznaczonym miejscu, wciskając F8 przechodzisz kolejne...
Chciałbym zrobić dialog z paskiem postępu, który obliczałby pewną funkcję. Z tej funkcji wyrzucam info dla pasku postępu o ilości przetworzonych danych. Wie ktoś jak to zrobić? Próbowałem wrzucić tą funkcje w pętle komunikatów dialogu, ale niestety nic to nie dawało. Wykonywała się najwyżej raz. Deklaracja po wywołaniu dialogu też nie dawała oczekiwanych...
Jak użyć stałych zapisanych w pamięci programu przez const unsigned char TEXT[] = "jakiś tekst"; W funkcjach typu strcpy(), strcmp() itp? Te funkcje nie przyjmują wskaźnika do const więc nie można zrobić tego w ten sposób: strcmp(bufer, TEXT); co gorsza nie da się w ten sposób: strcmp(bufer, "jakiś tekst");...
W funkcji f Nie mam pojęcia po co ta zmienna statyczna. Wystarczy inkrementować zmienną globalną. Chyba, że jako zabezpieczenie żeby nie zmieniać zmiennej globalnej, ale i to średnio skuteczne. Można też przekazać dodatkowy parametr, wskaźnik do zmiennej, która będzie przechowywać ilość wykonań funkcji. przy zakresie a=6 b=10 wychodzi 257 wywołań funkcji,...