Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    14

    [C] invalid type of argument of unary........

    cosa vuol dire??
    Mi segnala questo errore alla riga del printf!!!

    #include <stdio.h>

    int main (argc, argv)
    int argc;
    char argv;
    {
    while (-argc)
    printf ("%d\n", codice(*++argv));
    }

  2. #2

    Re: [C] invalid type of argument of unary........

    Originariamente inviato da rikka84
    cosa vuol dire??
    Mi segnala questo errore alla riga del printf!!!

    #include <stdio.h>

    int main (argc, argv)
    int argc;
    char *argv[];
    {
    while (-argc)
    printf ("%d\n", codice(*(++argv)));
    }

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    14
    Ora mi da un errore di memoria!!! Ti posto tutto il prog...

    #include <stdio.h>

    int codice(u)
    char*u;

    {
    register i,s=0;
    int l,t;

    l=strlen(u);
    for (i=0;i<l;i++)
    {
    t=(u[l-i-1]-'0')*(1+((i+1)%2));
    s+=t<10 ? t:t-9;
    }
    return 10-s%10;
    }

    int main (argc, argv)
    int argc;
    char*argv[];
    {
    while (-argc)
    printf ("%d\n", codice(*++argv));
    }

  4. #4
    Utente di HTML.it L'avatar di edriv
    Registrato dal
    Oct 2004
    Messaggi
    367
    while(argc--)

    o

    do{...}while(--argc);

    (non testato)
    I've got a bike. You can ride it if you like.

  5. #5
    Originariamente inviato da rikka84
    Ora mi da un errore di memoria!!! Ti posto tutto il prog...

    #include <stdio.h>

    int codice(u)
    char*u;

    {
    register i,s=0;
    int l,t;

    l=strlen(u);
    for (i=0;i<l;i++)
    {
    t=(u[l-i-1]-'0')*(1+((i+1)%2));
    s+=t<10 ? t:t-9;
    }
    return 10-s%10;
    }

    int main (argc, argv)
    int argc;
    char*argv[];
    {
    while (-argc)
    printf ("%d\n", codice(*(++argv)));
    }
    potrebbe essere che si incasina con le precedenze degli operatori..

  6. #6
    Originariamente inviato da edriv
    while(argc--)

    o

    do{...}while(--argc);

    (non testato)
    no, e' giusto il while(--argc)..
    credo

  7. #7
    Utente di HTML.it L'avatar di edriv
    Registrato dal
    Oct 2004
    Messaggi
    367
    Sì, hai ragione.
    Volovo dire che ha scritto "-" invece di "--", poi ho sbagliato...

    A parte tutti gli altri errori (almeno #include <string.h>)...
    E poi non ho capito cosa deve fare la funzione... è per caso un codice di controllo degli errori?
    I've got a bike. You can ride it if you like.

  8. #8
    [B]traduco:
    codice:
    #include <stdio.h>
    
    int codice(u)
    char*u;
    {
    register i,s=0;
    int l,t;
    
    l=strlen(u); // l = lunghezza di u
    for (i=0;i<l;i++) per l cicli
    {
    t=(u[l-i-1]-'0')*(1+((i+1)%2)); t= carattere opposto della stringa - char '0' * 1 o per 2 a seconda..
    s+=t<10 ? t:t-9; s= s+ t o t-9 a seconda..
    }
    return 10-s%10; torna un nummero compreso tra 1 e 9
    }
    
    int main (argc, argv)
    int argc;
    char*argv[];
    {
    while (-argc)
    printf ("%d\n", codice(*++argv));
    }

  9. #9
    Utente di HTML.it L'avatar di edriv
    Registrato dal
    Oct 2004
    Messaggi
    367
    Non è che non ho capito il codice, non ho capito l'utilità!
    E comunque

    codice:
    #include <stdio.h>
    
    int codice(u)
    char*u;
    {
    register i,s=0;
    int l,t;
    
    l=strlen(u); // l = lunghezza di u
    for (i=0;i<l;i++) per l cicli
    {
    t=(u[l-i-1]-'0')*(1+((i+1)%2)); //t= carattere opposto della stringa - char '0' * 2 con i pari, 1 con i dispari
    s+=(t<10 ? t:t-9); //s= s+t o s= s+t-9 a seconda..
    }
    return 10-s%10; //torna un numero compreso tra 1 e 10 (10-[0-9]) = [1-10]
    }
    
    int main (argc, argv)
    int argc;
    char*argv[];
    {
    while (--argc)
    printf ("%d\n", codice(*++argv));
    }
    Avvisami se ho scritto qualche cavolata...
    I've got a bike. You can ride it if you like.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.