Visualizzazione dei risultati da 1 a 6 su 6

Discussione: [C] Stringhe

  1. #1

    [C] Stringhe

    Raga ho un nuovo quesito:
    premesso ke non posso usare strlen se no sarebbe tutto + facile dovrei far stampare una cosa solo se la stringa ke inserisco in input è di 5 caratteri vi posto un po' di codice:

    #include <stdio.h>
    #define MAX 100

    int main () {

    char input[MAX];

    scanf("%s",input);
    if (input==5) printf("una cosa a caso");

    E' corretto?...cmq ho provato ma non funge...se mi date qualke aiuto sarei ben felice grazie a tutti
    "E' giunta l'ora, amiche care, ormai di chiacchierar, di cappellini di chiffon di cavoli o di re, di come il mare va in bollor se i gatti san volar"

  2. #2
    Utente di HTML.it L'avatar di Stoicenko
    Registrato dal
    Feb 2004
    Messaggi
    2,254
    ti posto cosa dice la documentazione sulla scanf

    int scanf(char *format, args ...)

    Legge dallo stdin e mette l'input negli indirizzi delle variabili
    specificate nella lista di args; ritorna il numero di caratteri letti.

  3. #3
    quindi dovrei fare int scanf (char *miastringa args)?
    "E' giunta l'ora, amiche care, ormai di chiacchierar, di cappellini di chiffon di cavoli o di re, di come il mare va in bollor se i gatti san volar"

  4. #4
    pongo il problema in maniera + semplice:
    come faccio a contare quanti caratteri ci sono in una stringa inserita in input senza usare strlen?
    "E' giunta l'ora, amiche care, ormai di chiacchierar, di cappellini di chiffon di cavoli o di re, di come il mare va in bollor se i gatti san volar"

  5. #5
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Usa un ciclo e un contatore ... esamina ogni elemento della stringa (ogni carattere) e quando trovi il terminatore (valore binario 0) allora esci dal ciclo con il risultato nel contatore.
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  6. #6
    Originariamente inviato da Stoicenko
    ti posto cosa dice la documentazione sulla scanf

    int scanf(char *format, args ...)

    Legge dallo stdin e mette l'input negli indirizzi delle variabili
    specificate nella lista di args; ritorna il numero di caratteri letti.
    Occhio: non restituisce il numero di caratteri letti, ma il numero di campi letti.

    Per quanto riguarda il problema, puoi scrivere facilmente una tua versione della strlen.
    Amaro C++, il gusto pieno dell'undefined behavior.

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.