Autor: Dondu
Oddaję w Wasze ręce kompilator (online) języka C, który umożliwi Wam szybką jego naukę, byście zostali jego "maniakami" tak jak wielu z nas. :-)
Proszę o wyrozumiałość i informacje o zauważonych błędach, czy pomysłach dot. funkcjonalności kompilatora: Problemy i pomysły
Powodzenia w nauce języka C!
Dondu
CManiak
czyli kompilator online języka C
CManiak powstał na potrzeby Kursu języka C.
W każdym artykule, który używa kompilatora, po prawej stronie przeglądarki, powinno pojawić się zminimalizowane okienko kompilatora. Także w tym artykule powinieneś teraz widzieć to okienko:
Jeżeli go nie ma, postępuj zgodnie z punktem: Problemy z kompilatorem.
Gdy kompilator jest zminimalizowany pozostaje zawsze na swoim miejscu, co umożliwia Ci swobodne przesuwanie artykułu.
Gdy powiększysz kompilator klikając przycisk Powiększ przykleja się on do miejsca w artykule, w którym go otworzyłeś, ale możesz go swobodnie przemieszczać chwytając kursorem za górną belkę.
Gdy ponownie zmniejszysz klikając przycisk Zmniejsz, odkleja się od artykułu i ląduje ponownie w ustalonym na początku miejscu ekranu..
Zakładka: Kod źródłowy
Tutaj możesz pisać i edytować swój kod. Składnia jest kolorowana, co ułatwia pracę nad kodem.
Działają wszelkie standardowe Ctrl+c, Ctrl+v, Ctrl+z, itp.
Zakładka: Komunikaty
Po rozpoczęciu kompilacji w zakładce tej możesz obserwować postęp kompilacji i uruchamiania oraz komunikaty kompilatora. Gdy program zostanie poprawnie skompilowany i wykonany zobaczysz na zielonym tle:
Jeżeli wystąpią jakieś błędy, czy ostrzeżenia, także zostaną pokazane, ale na czerwonym tle:
Zakładka: Terminal
To nic innego jak znakowy (ASCII) ekran wyjściowy, z którego możesz korzystać w celu sprawdzania poprawności działania Twojego programu za pomocą instrukcji np. printf(). Warunkiem pokazania się w terminalu wyniku pracy programu, jest jego poprawne skompilowanie i uruchomienie.
Zakładka: Przykłady
W tej zakładce znajdziesz przykłady programów, z których możesz korzystać. Możesz je zaimportować do kompilatora klikając wybrany przycisk lub zaznaczyć i skopiować dowolny fragment dowolnego z przykładów.
W artykułach, które będą wykorzystywać kompilator, w zakładce tej będę dostępne przykłady do konkretnego artykułu, który będziesz miał otwarty.
Dodatkowo dostępne są przykłady kodów "startowych", które możesz zaimportować do kompilatora gdy chcesz napisać własny program, oszczędzając czas na pisanie niezbędnych jego fragmentów. Przykłady te są takie same niezależnie, który artykuł masz otwarty.
Problemy z uruchomieniem kompilatora
Internet Explorer
IE - tfu! Zakała rodziny! W starszych wersjach IE kompilator może nie działać prawidłowo. Rozwiązaniem jest zainstalowanie przeglądarki FireFox'a lub Chrome.
Kompilator nie pojawia się.
W takim przypadku ponownie załaduj stronę naciskając klawisz F5.
Jeżeli po ponownym przeładowaniu strony kompilator nadal się nie pojawi, wykonaj według kolejności:
- usuń cache przeglądarki (pamięć podręczna - tymczasowe pliki) i ciasteczka,
- ponownie dwa razy załaduj stronę naciskając klawisz F5.
Kompilator nie pojawia się także:
- na telefonach komórkowych korzystających z uproszczonej wersji bloga (dla urządzeń mobilnych),
- gdy wykorzystujesz programy blokujące niepożądane treści, np. AdBlock, itp.
- niezbędne jest także możliwość używania javascript.
Zgłaszanie problemów i pomysłów
Wysyłając zgłoszenie o problemach z kompilatorem CManiak podaj:
- typ i wersję przeglądarki, której używasz,
- typ i wersję systemu operacyjnego,
- dokładny opis w jakich okolicznościach powstaje problem.
- ewentualne zrzuty ekranu załaduj na imageshack.us, a w wiadomości podaj linki.
0
Super ten kompilator, już dziś mi się przydał jak chciałem szybko sprawdzić czy poprawnie mi działa funkcja qsort.
OdpowiedzUsuńTakże brawo za pomysł, pewnie nieraz się jeszcze przyda.
Trzymam kciuki za powodzenie kursu. Sam chcę się przesiąść z bascoma bo dosyć często nie wiadomo "co się dzieje'" z programem. Mam nadzieje, że będzie on pisany tak aby zrozumiał go każdy :).
OdpowiedzUsuńW komentarzu zawsze można dopytać lub zwrócić na coś uwagę, a ja poprawię lub uzupełnię dany artykuł.
OdpowiedzUsuńFajny ten kompilator tylko coś się zablokowało po kilkunastu kompilacjach: "Przesyłanie danych do serwera kompilatora ..." i dalej nic.
OdpowiedzUsuńO,o! Awaria bazy. Dajcie mi chwilkę ...
OdpowiedzUsuńJuż naprawione :-)
OdpowiedzUsuńJak się przesuwa okno z kompilatorem (pomniejszonym lub powiększonym) to okno gdzieś ginie. Mozilla/5.0 (Windows NT 6.1; WOW64; rv:18.0) Gecko/20100101 Firefox/18.0
OdpowiedzUsuńDlaczego są błędy w przykładzie na atmega8?Bardzo mi zależy na poprawnych bo sam mam atmegę a chciałbym się nauczyć programować. Bo chce zrobić dekoder kodu RC5 żeby można było robotem sterować zdalnie.
OdpowiedzUsuńPS Jeśli można było prosić o artykuł na temat takiego właśnie programu, to był bym wdzięczny.
Biblioteka obsługi ATmega8 ma swoje bardzo istotne ograniczenia, których jak dotąd nie opisałem. Dlatego taki program jak próbowałeś:
OdpowiedzUsuń#define F_CPU 1000000
#include
void blink();
int main()
{
blink();
_delay_us(100);
return 0;
}
nie wykona się prawidłowo (pomijam, że brak w nim funkcji blink()).
Postaram się w miarę możliwości jak najszybciej przygotować artykuł o tym w jaki sposób wykorzystać CManiak'a do ćwiczeń C dla ATmega8.
Nie widzę nidzie okna tego kompilatora, na żadnej przeglądarce...
OdpowiedzUsuńSprawdziłem na kilku komputerach z różnymi przeglądarkami (z wyjątkiem IE) - działa prawidłowo. Możliwe więc, że masz ustawione blokady w AdBlock itp. Piszę o tym pod koniec tego artykułu.
OdpowiedzUsuńA da się wrzucić plik nagłówkowy do programu?
OdpowiedzUsuńNie, na razie nie ma takiej możliwości. Może w przyszłości.
UsuńJa mam inny problem, nie działa mi zakładka "Terminal" i "Komunikaty", nie mam pojęcia jak temu zaradzić.
OdpowiedzUsuńMasz włączoną w przeglądarce obsługę javascript?
UsuńA może jakiś AdBlock przeszkadza?
Jaka przeglądarka i wersja?
Firefox wersja 24.0. Wszystko działa poza tymi 2ma zakładkami.
UsuńSprawdziłem na tej wersji - działa poprawnie. Usuń może cache przeglądarki, choć nie było ostatnio aktualizacji CManiaka, więc pewnie to nic nie zmieni. Niestety problem leży zapewne po Twojej stronie. Spróbuj na Chrome.
UsuńUWAGA!!!
OdpowiedzUsuńATmega8 - właśnie dodałem bibliotekę obsługującą w CManiaku ten mikrokontroler. Szczegóły znajdziecie w CManiaku w zakładce PRZYKŁADY.
Kompilator cos nie dziala. Po nacisnieciu kompiluj i wykonaj zostaje tylko na ekranie tekst
OdpowiedzUsuńPrzesyłanie danych do serwera kompilatora ...
i tyle. Brak komunikatow powrotnych.
Pozdrawiam
Informuję, że CManiak nie działa - przeglądarka Chrome, aktualna wersja. Stoi na ekranie z wysyłaniem do serwera + 3 kropki. Często z niego korzystam, więc jeśli dałoby się coś z tym zrobić, to bardzo proszę :)
OdpowiedzUsuńPo naciśnięciu kompiluj i wykonaj wyświetla mi się cały czas: Przesyłanie danych do serwera kompilatora ... i dalej nic się nie dzieje.
OdpowiedzUsuńDziękuję za te informacje - jestem na etapie rozgrzebanego kodu ponieważ nastąpiły zmiany na serwerze i muszę dostosować system, co okazało się dość skomplikowane. Poinformuję na Facebooku, gdy uporam się z problemem. Ten problem dot. także systemu pisania artykułów, ... a na to wszystko nakłada się jeszcze straszna ilość obowiązków, która od miesiąca spadła mi na głowę.
OdpowiedzUsuńUWAGA!!!
OdpowiedzUsuńO dzisiaj CManiak działa już poprawnie..
RUNTIME ERROR! jak kompiluje taki oto program, gdy wywołuje funckje free(x); na koncu :)
OdpowiedzUsuńint main()
{
srand(time(0));
int *x;
int i = 0;
x = (int *) malloc(sizeof(int)*10);
for(i = 0; i < 10; i++)
{
x = rand() % 100;
printf("[%d] = %d\n", i, x);
}
free(x);
return 0;
}
Witam to są moje początki z C, i ten kompilator to jest to na co czekałem, dobra robota!
OdpowiedzUsuńSprzwdzam właśnie na tablecie z androidem i chrome - działa kompilacja natomiast nie ma możliwości scrollowania kodu góra dół. Czy jest szansa to dorobić? Chętnie bym skorzystał ale z pewnych względów muszę używać tabletu. Dzięki!
OdpowiedzUsuńPozdrawiam
Marcin
Cześć.
UsuńDziękuję za informację.
Jaką rozdzielczość ma ekran?
Możesz zrobić screen i wrzucić gdzieś na hosting zdjęć?
Zrobiłem zrzut. Wstawię jak tylko znajdę czas. Dzięki za pomoc!
Usuńhttp://www.elektroda.pl/rtvforum/viewtopic.php?p=14930184#14930184
UsuńZałożyłem temat.
Pozdrawiam, Marcin
ładna zabawka...i nawet działa
OdpowiedzUsuńAni na Google Chrome, ani na Mozilli nie mam żadnych zakładek w CManiaku. Nie mam AdBlocka, ciasteczka itd. usunięte.
OdpowiedzUsuńSprawdziłem aktualny Chromme, Firefox i Edge - wszystkie działają prawidłowo.
UsuńW jakiej domenie stronę używasz? Mam nadzieję że w .com.
A może masz wyłączoną obsługę javascript?
Nie wiem co się stało, ale już działa. Używam w com oczywiście i js raczej włączony, ale już nie sprawdzałam, skoro wszystko jest w porządku. Dziękuję mimo to. :)
UsuńKompilator nie działa. Wyświetla się okienko w którym jest opcja powiększenia i zmnieszenia programu, ale po zwiększeniu wita nas jedynie pusta biała przestrzeń.
OdpowiedzUsuńSprawdziłem działa OK. W jakiej domenie wchodzisz na blog? .com, .uk itd.? Używaj .com.
UsuńWitaj
OdpowiedzUsuńU mnie tez CManiak nie dziala, pojawia sie okno zminimalizowane a po jego kliknieciu drugie takze zminimalizowane. Mam Firefox 50.1.0 system Linux. Problemem jest... brak kodu JS do wykonania - tak twierdzi debuger i ... ma racje.
Te 26,33kB biblioteki jquery-ui.min.js proponuje umiescic na swoim serwerze poniewaz z ajax.googleapis.com biblioteka co prawda sie sie sciaga ale ma status "polaczenie niezabezpieczone" i FF fizycznie blokuje ta biblioteke. Oczywiscie FF ani o tym nie informuje ani nie ma gdzie tego wlaczyc - moze jakies wyjatki dla witryny czy opcje wlaczane w chrome://costam, nie wiem bo rzadko uzywam graficznych browserow. Ostatnio przegladarki dostaly istnego wscieku 4 liter na punkcie wymuszania uzycia SSLa niezaleznie od tego czy potrzeba czy nie.
Stawiam na to ze zmiana lokalizacji plikow js rozwiaze problem z interface nie tylko u mnie.
Pozdrawiam
sjd
Witam.
UsuńDziękuję za informacje. Sprawdziłem - wszystko działa prawidłowo zarówno na Chrome jak i FF. Na na tablecie z Androidem takżę ok, i nawet na komputerze Windowsami XP - tak mam jeszcze jeden komputer z takim systemem :).
Niemniej jednak ssl to faktycznie temat z którym muszę się zmierzyć, ale problemem jest permanentny brak czasu.
Z plikami jest problem - strona jest niekomercyjna, stąd korzystam z bezpłatnych miejsc sieciowych.
Jeszcze raz dziękuję za info i pozdrawiam!!!
Jasna sprawa. Czasu niestety mamy tylko 24h/dobe.
UsuńTo moze chociaz zmien to:
<link href="//ajax.goog
na <link href="https://ajax....
wszedzie gdzie jest https w kodzie pliki laduja sie bez problemu, chocby ten pulsecostam z tej samej domeny...
To chyba jest literowka w kodzie ale powoduje sciaganie po http i burzenie sie browserow.
Pozdrawiam
sjd
W FF 50 opcja "tymczasowo wylacz ochrone" ukryta jest pod ikonka i na pasku adresowym a nastepnie strzalka przy nazwie domeny. Po tym zabiegu Cmaniak dziala i kompiluje.
OdpowiedzUsuńOdpowiadam sam sobie bo anonim nie ma mozliwosci edycji. Sorry.
Witam,
OdpowiedzUsuńu mnie na Chromie jest taka sytuacja, że pojawia się zminimalizowane okienko z przyciskami powiększ i pomniejsz, które działają prawidłowo. Jednak po wciśnięciu powiększ pojawia się okno tylko z górnym czerwonym paskiem i przyciskami Powiększ i Zmniejsz. Żadnych zakładek nie mam.
UWAGA!!!
OdpowiedzUsuńZ powodu wyłączenia serwera elektroda.eu (niezależne od nas) niektóre funkcjonalności, w tym CManiak nie będą działały. Na razie nie mam czasu, by zająć się tym problemem i przenieść funkcjonalności bazodanowe na inny serwer.
Sugeruję obserwowanie naszego fanpage na Facebooku, gdzie dam znać o ponownym uruchomieniu tych funkcji.
Coś już wiadomo kiedy CManiak znów będzie działał :)?
OdpowiedzUsuńJa ustawiłem tą stronę jako startową, i tak codziennie sprawdzam... Może ktoś ma możliwość udostępnienia "kawałka" serwera na sam kurs?
OdpowiedzUsuńI jak z tym Cmaniakiem? Bez niego kurs traci sporo na wartości, a mineło juz pół roku od zamknięcia Cmaniaka
OdpowiedzUsuńPonawiam prośbę o uruchomienie CManiak
OdpowiedzUsuńNiby pisze że powrócił a nie działa - "...Wyświetla się okienko w którym jest opcja powiększenia i zmniejszenia programu, ale po zwiększeniu wita nas jedynie pusta biała przestrzeń"'''.
OdpowiedzUsuńSą inne kompilatory online, wystarczy poszukać, np
OdpowiedzUsuńhttps://www.onlinegdb.com/online_c++_compiler
Po wciśnięciu - Powiększ, powiększa się, jest większy czysty biały prostokąt z czerwonym paskiem i napisem CManiak(ver.2.0 Beta). Po wciśnięciu Zmniejsz - zmniejsza się, powiększony stoi na środku ekranu pod spodem przewija się tekst okna. Mam Firefoxa 72.0.1 / 64bit /
OdpowiedzUsuńpuste okno we wszystkich przeglądarkach
OdpowiedzUsuń