Strona 1 z 2 12 OstatniOstatni
Pokaż wyniki 1 do 10 z 20

Temat: obsługa argv

  1. #1
    Zarejestrowany
    Apr 2007
    Postów
    367

    Domyślnie obsługa argv

    witam, jak dodawać do siebie argumenty programu?

    main(int argc, int argv[])
    {
    printf("%d",argv[1]+argv[2]);
    }
    To gówno daje, nie mam już do tego cierpliwości, help!!

    Aha, i co oznacza takie coś?:
    scanf("%c",&var);

  2. #2
    Zarejestrowany
    Oct 2006
    Skąd
    krzesło
    Postów
    681

    Domyślnie

    scanf (%c ,&var)
    %c wyświetla znak przypisany do zmiennei typu char
    & t o wskaznik var to nazwa zmiennei

    czyli pobiera dane od usera i przypisuje je do char var
    oile się niemyle
    Ostatnio edytowane przez ble34 : 04-20-2007 - 16:27

  3. #3
    Zarejestrowany
    Apr 2007
    Postów
    367

    Domyślnie

    nieeeeee, nie o to mi chodziło.
    Po jasną cholere jest ten znaczek '&'.
    Nie mogło być to tak: scanf (%c ,var) ?

  4. #4
    Zarejestrowany
    Oct 2006
    Skąd
    krzesło
    Postów
    681

    Domyślnie

    znaczek & wskazuje funkcji adres początku zajmowanei pamięci przez zmienną var anie wartość zmiennei
    pod tym adresem funkcja dokonuje zapisu danych
    jeśli go pominiesz mozes ie okazać funkcja zapisze dane w inei komórce pamieci i program się posypie
    to jest chyba własnie asencja c
    szczegóły

    takie duperele a tak istotrne
    strasznie wymagajacy język
    Ostatnio edytowane przez ble34 : 04-20-2007 - 18:53

  5. #5
    Zarejestrowany
    Feb 2007
    Skąd
    Kielce
    Postów
    131

    Domyślnie

    znaczek & to wyluskanie adresu pamieci, zas * to wskaznik, wiec & podaje adres komorki pamieci poczatku danej zmiennej (w przypadku tablicy jest to pierwszy indeks) w postaci szesnatkowej (bez rzutowania) zas wskaznik wskazuje na wartosc komorki pamieci
    "W życiu wszystko ma jakiś sens, tylko trzeba go odnaleźć. No i często ma on odmienne znaczenie dla różnych osób."

  6. #6
    Zarejestrowany
    Apr 2007
    Postów
    367

    Domyślnie

    bez sensu, co się stanie w takim przypadku?
    main()
    {
    char var[4];
    scanf("%s",&var);
    }
    i wprowadze 5 znaków?


    ale so z tymi argumentami

  7. #7
    Zarejestrowany
    Oct 2006
    Skąd
    krzesło
    Postów
    681

    Domyślnie

    bo




    powinno być tak




    main()




    {




    char var[4];






    scanf("%4s",var);




    }

    sory jeśłi chodzi o zmienne łańcuchowe niemusisz stosowac wskaznika &

    czyli taki zapis też jest poprawny
    Ostatnio edytowane przez ble34 : 04-20-2007 - 18:59

  8. #8
    Zarejestrowany
    Feb 2007
    Skąd
    Kielce
    Postów
    131

    Domyślnie

    zapisza sie tylko 4 znaki...

    jesli chodzi Ci kolejno o argumenty funkcji main (wlasciwie calego programu gdyz jest to funkcja glowna) to kolejno jest z tego co pamietam sciezka pliku wykonywalnego, jego nazwa oraz reszta to parametry

    --------
    edited

    i wyczulam was: int main() jesli juz....
    "W życiu wszystko ma jakiś sens, tylko trzeba go odnaleźć. No i często ma on odmienne znaczenie dla różnych osób."

  9. #9
    Zarejestrowany
    Apr 2007
    Postów
    367

    Domyślnie

    witam, jak dodawać do siebie argumenty programu?
    jesli chodzi Ci kolejno o argumenty funkcji main (wlasciwie calego programu gdyz jest to funkcja glowna) to kolejno jest z tego co pamietam sciezka pliku wykonywalnego, jego nazwa oraz reszta to parametry

  10. #10
    Zarejestrowany
    Feb 2007
    Skąd
    Kielce
    Postów
    131

    Domyślnie

    przekopiowywujesz wszystko do jednej wiekszej tablicy bajtow, lub przekopiowywujesz wszystkie znaki po kolei to stringa
    "W życiu wszystko ma jakiś sens, tylko trzeba go odnaleźć. No i często ma on odmienne znaczenie dla różnych osób."

Strona 1 z 2 12 OstatniOstatni

Podobne wątki

  1. [php] Obsługa sesji
    By Dominik in forum PHP/CGI/ASP/JSP/J2EE
    Odpowiedzi: 1
    Autor: 11-20-2006, 18:38

Zasady Postowania

  • Nie możesz zakładać nowych tematów
  • Nie możesz pisać wiadomości
  • Nie możesz dodawać załączników
  • Nie możesz edytować swoich postów
  •  
Subskrybuj