bool FScanner::GetToken () { if (ScanString (true)) { if (TokenType == TK_IntConst) { char *stopper; // Check for unsigned if (String[StringLen - 1] == 'u' || String[StringLen - 1] == 'U' || String[StringLen - 2] == 'u' || String[StringLen - 2] == 'U') { TokenType = TK_UIntConst; Number = (int)strtoull(String, &stopper, 0); Float = (unsigned)Number; } else { Number = (int)strtoll(String, &stopper, 0); Float = Number; } } else if (TokenType == TK_FloatConst) { char *stopper; Float = strtod(String, &stopper); } else if (TokenType == TK_StringConst) { StringLen = strbin(String); } return true; } return false; }
bool FScanner::GetToken () { if (ScanString (true)) { if (TokenType == TK_NameConst) { Name = FName(String); } else if (TokenType == TK_IntConst) { char *stopper; Number = strtol(String, &stopper, 0); Float = Number; } else if (TokenType == TK_FloatConst) { char *stopper; Float = strtod(String, &stopper); } else if (TokenType == TK_StringConst) { StringLen = strbin(String); } return true; } return false; }
int main(int argc, char *argv[]) { i_64 d = strbin(argv[1]); if (mindistD(d)) printf("Minimum distance is at least D.\n"); else printf("Minimum distance is less than D.\n"); return(0); }
/* Permet d'afficher le code dans la console en une seule ligne */ void PrintCode(Instruction * CodeMachine){ logfichier = fopen("logfichier.txt","a"); char *bina; fprintf(logfichier,"Code binaire généré : \n"); fprintf(logfichier,"\n"); while(CodeMachine->Instruct!=0b10011000000000000000000000000000){ bina=strbin(CodeMachine->Instruct,32); printf("%s\n",bina); fprintf(logfichier,"%s\n",bina); CodeMachine=CodeMachine->suivant; } bina=strbin(CodeMachine->Instruct,32); fprintf(logfichier,"%s\n",bina); printf("%s\n",bina); fclose(logfichier); }