Visualizzazione dei risultati da 1 a 6 su 6

Discussione: [C]scanf a tempo

  1. #1

    [C]scanf a tempo

    Ho fatto un piccolo lettore mp3 in C che mi riproduce una lista di brani contenuta in un file...

    il problema è il seguente..

    Io voglio che durante la riproduzione del brano il lettore sia in grado anche di prendere in input dei comandi come pause o stop dalla tastiera...

    solo che se metto una scanf( o un'altra qualsiasi funzione per prendere in input) il programma sta in attesa del testo è finita la canzone non è in grado di raggiungere i codice che permette di avviare la seconda canzone.. diciamo che la scanf mi blocca il programma fino a che non inserisco del testo...

    Ho quindi pensato di fare una funzione che fosse in gradi di prendere in input ma a tempo.. cioè.. una scanf che sta in attesa 5 secondi di testo.. poi passa ad altro codice e quando ritorna li stà ancora in attesa di input per altri 5 secondi.. solo che per far ciò non posso usare altre funzioni come il getchar perchè anche questo bloccherebbe l'esecuzione del programma fino a che non viene inserito del testo...

    Ho pensato quindi che l'unica soluzione sia intervenire sul puntatore all'input cioè l'stdin che è quello usato da tutte le funzioni che prendono in input... solo che non sò come usarlo... qualcuno mi potrebbe dare qualche dritta?

    ciao ciao e grazie mille a tutti!!
    "Penso che nel mondo ci sia mercato per quattro o cinque computer"... Thomas Watson, presidente della IBM, 1943

  2. #2
    bè la funzione sleep(x) mette in wait(in attesa cioè) il programma di x nanosecondi ma cmq blocca difatto il flusso del programma.

    Per me l'unica soluzione è utilizzare due processi:un padre e un figlio o i thread.

    ciao
    Vediamo..sogni che diventano professione...passioni che diventano vita... Free as in Freedom...

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2003
    Messaggi
    1,258
    che io sappia non si possono eseguire 2 processi contemporaneamente in c..beh facci sapere

  4. #4
    una buona soluzione secondo me sarebbero stati anche i timer...

    Dico una procedura timer cioè una TIMEPROC...

    visto che di timer ne possono partire più di uno alla volta...

    solo che sono per il c++ e con visual C con un normale file .c non vanno...

    beh ci proverò ancora...

    ciao ciao!!
    "Penso che nel mondo ci sia mercato per quattro o cinque computer"... Thomas Watson, presidente della IBM, 1943

  5. #5
    Utente di HTML.it L'avatar di /dev/null
    Registrato dal
    May 2004
    Messaggi
    1,936
    Prova a leggere QUA'

    Ultima modifica ad opera dell'utente /dev/null il 01-01-0001 alle 00:00

  6. #6
    Ho letto... comunque quello che cerco di fare io è un thread.. ho bisogno di creare un thread... come posso procedere dato che io come compilatore ho Visual C?.. Ho visto che per Linux c'è la thread.h e la funzione pthread_create ma che non c'è invece con Visual C...

    Mi potete dare qualche dritta o almeno dirmi dove posso vedere ?

    grazie mille a tutti!! ciao ciao
    "Penso che nel mondo ci sia mercato per quattro o cinque computer"... Thomas Watson, presidente della IBM, 1943

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 © 2025 vBulletin Solutions, Inc. All rights reserved.