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

KURS HOME ASSISTANT

Chcesz zautomatyzować swój dom bez skomplikowanego kodowania?
Zastanawiasz się nad wyborem sprzętu, oprogramowania i aplikacji?
Od czego zacząć przygodę z HA w 2025? Co będzie najlepsze na start?

Nasz kurs Home Assistant nauczy Cię krok po kroku, jak łatwo zautomatyzować swój dom i oszczędzić na rachunkach za prąd i ogrzewanie. Bez chmur, bez zbędnych abonamentów. Twoja przygoda z Home Assistant zaczyna się tutaj!

↓↓↓

    Szanujemy Twoją prywatność. Możesz wypisać się w dowolnym momencie.




    Teraz jest 5 kwi 2025, o 20:48


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 3 ] 
    Autor Wiadomość
    PostNapisane: 12 mar 2015, o 08:49 
    Offline
    Użytkownik

    Dołączył(a): 09 lut 2013
    Posty: 45
    Pomógł: 3

    Hej

    Mam problem i tym razem chodzi chyba o samo Visual Studio ale do rzeczy. Wątek mam też na innym forum ale założe i tu, może ktoś się z tym spotkał

    Witam

    Mam dziwny problem z funkcją scanf("%s",
    Powinna ona obcinać tekst po wykryciu Białego znaku. A jednak coś jest nie tak .
    Załączam początek kodu( reszta to obliczenia i działają. Problem z scanf("%s" jest taki , że po wpisaniu np. Jak Nowak program się zamyka. Szukałem co to może być i gdy dodałem funkcje getchar(); to zadziałało. Poniżej 2 kody

    Całego nie wklejam, bo część licząca działa. poniższy kod powoduje, że scanf("%s" wczytuje nazwisko( co zaraz pokaże na zrzucie ekranu)


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


    Ten kod zaś powoduje, że pięcioliterowe nazwisko będzie pominięte (5x getchar():)

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


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

    Dobra tu zrzut ekranu. Wyraźnie widać, że funkcja pobiera cyfry po spacji i podstawia do wzoru a nie powinno tak być. Dodam że kompilowałem na kompilatorze on line i to działa. Próbowałem też inny listing z ksiązki Praty i lipa. Zmieniałem ustawienia kompilatora w Visual Studio na C potem C++ potem default. Nic.

    nie mam pojęcia co się dzieje. Może ktoś ma jakiś pomysł. Kiedyś to chodziło mi normalnie( jakieś 1,5 roku temu, może 2 lata. Jedyna zmiana to win 8.1)

    Nie działa mi jeszcze wgrywanie obrazków na kompie firmowym. Jakby co poniżej link
    http://forum.4programmers.net/Newbie/24 ... cje_scanfs

    Pozdrawiam
    Piotrek



    Ostatnio edytowano 12 mar 2015, o 09:53 przez leech10, łącznie edytowano 1 raz

    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 12 mar 2015, o 09:30 
    Offline
    Użytkownik

    Dołączył(a): 20 wrz 2013
    Posty: 647
    Zbananowany użytkownik

    Pomógł: 101

    Przede wszystkim zapoznaj się z tym: http://forum.atnel.pl/topic7402.html
    .
    .
    .
    .
    .
    .
    .
    Funkcja działa tak jak powinna. Wpisujesz Jan Nowak, funkcja do tablicy nazwa wpisuje Jan, reszta ciągu siedzi sobie w buforze i jest odczytywana przy następnym wywołaniu. Program oczekuje liczby i się wykrzacza. Co z tym zrobić? Czytać całość ciągu aż do znaku '\n', a niepotrzebną część odrzucać, mniej więcej tak (nie pamiętam czy wzorzec w [] odrzuca białe znaki czy nie więc nie gwarantuje że przepisane na żywca będzie działać ;-)):
    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łę

    _________________
    +++++[>++++<-]>[>++++++<-]>.---------.+++.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 12 mar 2015, o 09:51 
    Offline
    Użytkownik

    Dołączył(a): 09 lut 2013
    Posty: 45
    Pomógł: 3

    Hej

    Ok tylko zastanawia mnie dlaczego na kompilatorze on line działa to inaczej. I w innym listingu Praty też. Zdaje sobie sprawę z tego, co napisął Prata, że ta funkcja słuzy do odczytu jednego ciągu znaków bez znaków białych i mogę mój problem ominąć na różne sposoby, choćby prez dodanie poniższego:

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


    Dobra rozumiem to co powiedziałeś, i niech tak zostanie.

    Pozdrawiam
    Piotrek

    P.S.

    Przepraszam za kod, poprawione.
    Może powinienm przerzucić sie na pieczenie ciastek a nie programowanie........
    Dobrze, że sa fora typu Atnel czy Elportal.........
    Gorzej bo są użytkownicy typu leech10 :lol:



    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: 3 ] 

    Strefa czasowa: UTC + 1


    Kto przegląda forum

    Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 2 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