Visualizzazione dei risultati da 1 a 4 su 4

Discussione: aiuto CRC in c++

  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2014
    Messaggi
    3

    aiuto CRC in c++

    salve ragazzi
    ho un problema riguardante il programma di crc da me sviluppato, per prima cosa devo passarlo in java ma quello è un problema secondario,il problema principale è che il programma oltre a rilevarmi il crc deve andare a inserirsi in una stringa contenente il valore iniziale binario e il valore del crc.
    posto il codice qui :
    codice:
    #include <cstdlib>#include <iostream>
    #include <string.h>
    
    
    using namespace std;
    
    
    const int DIM=20;
    int main()
    {
        string A,B,C,D;
        int lung,i=0,i1,n,cont,lunga;
        char e;
        
        
        cont=0;
       cout<<"inserire la stringa da elaborare[F(x)]\n : ";
        cin>>A;
        cout<<endl;
        
        
        cout<<"inserire il polinomio generatore[G(x)] N.B deve essere piu' corta della stringa da elaborare!!': ";
        cin>>B;
        cout<<endl;    
        
        
        
        
        lunga=A.length();
        lung=B.length();
        
        
        while(lunga<lung){
                          cout<<"la stringa da elaborare e' piu' corta del polinomio generatore.\n";
                          cout<<"inserire la stringa da elaborare: ";
                          cin>>A;
                          lunga=A.length();
                          }
        
       
        while(i<lunga){
            if((A.at(i)!='0')&&(A.at(i)!='1')){
                cout<<"la stringa da elaborare e' errata!!\n";
                cout<<"inserire la stringa da elaborare[F(x)]\n N.B. deve essere piu' lunga del polinomio generatore: ";
                cin>>A;
                lunga=A.length();
                i=0;
                
            }
            else i++;
        } 
        
        i=0;
        
        while(i<lung){
            if((B.at(i)!='0')&&(B.at(i)!='1')){
                cout<<"il polinomio e' errato."<<endl;
                cout<<"inserire il polinomio generatore[G(x)]: ";
                cin>>B;
                lung=B.length();
                i=0;
                
            }
            else i++;
        }
        
        
        
        
           
        for(i=0;i<lung-1;i++){
                            A=A+"0";
                            }
                            
        D=D+A.substr(0,lung);
        lunga=A.length();
        
        
        while(lunga>=lung){
        i1=0;                    
        cont=0;
         
        for(i=0;i<lung;i++){
        e=D.at(i)^B.at(i1);
        e+=48;
        C=C+e;
        i1++;
        }   
        
        for(i=0;((i<C.length())&&(C.at(i)=='0'));i++)
        {
          cont++;            
        }
        
        C.erase(0,cont);
        
        A.erase(0,lung);
        
        A=C+A;
        D.clear();
        C.clear();
        D=A.substr(0,lung);
        lunga=A.length();
        
        }
        
        lung=B.length();
        i=0;
        lunga=A.length();
        
        while(lunga<lung){
                      A="0"+A;
                      i++;
                      lunga=A.length();
                      }
                      
                                      
         
        cout<<"il crc e': "<<A<<endl;
        system("PAUSE");
        return EXIT_SUCCESS;
    }
    il problema è che avendolo fatto con string e non con char non mi funziona strcpy e strcat ...
    sono ormai alla deriva....

  2. #2
    Utente di HTML.it
    Registrato dal
    Feb 2011
    Messaggi
    156
    Se ho capito bene potrebbe servire un metodo della classe string come c_str() che ritorna la stringa nel formato del c classico (char*)

    Mentre per concatenare ad un oggetto string un oggetto char* è sufficente usare l'operatore + ridefinito nella classe string

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2014
    Messaggi
    3
    puoi farmi un esempio di come finziona la tua idea prendendo le mie variabili?

  4. #4
    Utente di HTML.it
    Registrato dal
    Nov 2014
    Messaggi
    3
    la seconda parte invece non l'ho capita proprio...cosa intendi per "ridefinito nella classe string?"

Tag per questa discussione

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.