Salve! Questo codice non funziona!

di il
5 risposte

Salve! Questo codice non funziona!

Ho trovato questo codice su un post (ecco il link: https://www.iprogrammatori.it/forum-programmazione/cplusplus/output-testo-t14074.html )

di conseguenza ecco il codice:

#include <string>

void print_slow(std::ostream& out, const std::string& s, int millis) {
	std::string::size_type sz = s.length();
	for (std::string::size_type i = 0; i < sz; i++) {
		out << s[i];
		Sleep((DWORD)millis);
	}
}
La parte che il software che uso che mi dichiara sbagliata è Sleep che se sostituisco DWORD con un numero e aggiungo una parentesi mi 
dice che non è verificato allo scopo Sleep
Perfavore Aiutooo :P

5 Risposte

  • Re: Salve! Questo codice non funziona!

    Sleep è una funzione di Windows

    Hai inserito 

    #include <windows.h>

    ?

    P.S. Per i thread che inserisci nel forum usa titoli adeguati

  • Re: Salve! Questo codice non funziona!

    Il codice ora funziona ma comunque non fa l'effetto desiderato perchè è stato ideato per rallentare l'apparizione delle scritte  ma non funziona ora mando tutto il codice perchè forse potreste trovare l'errore:

    #include<iostream>
    #include <string>
    #include <windows.h>

    void print_slow(std::ostream& out, const std::string& s, int millis) {
        std::string::size_type sz = s.length();
        for (std::string::size_type i = 0; i < sz; i++) {
            out << s[i];
            Sleep((DWORD)millis);
        }
    }

    using namespace std;
    int main()

    {
    cout<<"Hello MyName!\n";
    getchar();
    cout << "Here there are main missions:\n";
    getchar();
    cout << "A space ship is lost in the space you have to find it!\n";
    return 0;
    }

  • Re: Salve! Questo codice non funziona!

    Ciao, ho provato a fare qualche piccola modifica al tuo codice

    anche se credo che il metodo print_slow dovresti invocarlo nel main

    nota: io ho usato il terminale wsl per compilarlo

  • Re: Salve! Questo codice non funziona!

    Così funziona

    #include <iostream>
    #include <string>
    #include <unistd.h> // Include la libreria per usleep
    
    void print_slow(std::ostream& out, const std::string& s, int millis) {
        std::string::size_type sz = s.length();
        for (std::string::size_type i = 0; i < sz; i++) {
            out << s[i];
            usleep(millis * 1000); // Converti millisecondi in microsecondi
        }
    }
    
    using namespace std;
    int main()
    {
        print_slow(cout, "Hello MyName \n", 50);
        print_slow(cout, "Here there are main missions:\n", 50);
        print_slow(cout, "A space ship is lost in the space you have to find it!\n", 50);
        return 0;
    }
    
  • Re: Salve! Questo codice non funziona!

    27/09/2024 - Holaboba7 ha scritto:


    potreste trovare l'errore:

    Ma la funzione print_slow che hai copiati quando la chiami nel main?

    Non hai assolutamente idea di cosa fai, mi pare.

Devi accedere o registrarti per scrivere nel forum
5 risposte