void printDecl(Node* n) { printf(" "); if (n->storage == srgStatic) printf ("static "); printf("volatile "); switch (n->sign) { case sgnSigned: printf("signed "); break; case sgnUnsigned: printf("unsigned "); break; } switch (n->base) { case bsChar: printf("char "); break; case bsShort: printf("short "); break; case bsInt: printf("int "); break; } printf("v%d", n->varNum); if (n->struc == strArrEl) printf ("[3]"); printf(" = "); if (n->struc == strArrEl) printf("{ 0, "), printVal(n), printf(", 0 }"); else printVal(n); printf(";\n"); }
void FullGateWriterImpl::write(GatePtr pGate, std::ostream& outputStream) { std::string delimeter = "*"; outputStream << "Gate:"; unsigned int nbSeq = pGate->getLabelSeq().size(); for(unsigned int i = 0; i < nbSeq; i++) { outputStream << pGate->getLabelSeq()[i]; if(i < nbSeq - 1) { outputStream << delimeter; } } outputStream << std::endl; outputStream << "--Gate cost:" << pGate->getCost(); outputStream << std::endl; outputStream << "--Gate matrix:" << std::endl; MatrixPtr pMatrix = pGate->getMatrix(); int nbRows, nbColumns; pMatrix->getSize(nbRows, nbColumns); for(int i = 0; i < nbRows; i++) { for(int j = 0; j < nbColumns; j++) { char printfBuffer[PRINT_BUFFER_LENGTH]; ComplexVal val = pMatrix->getValue(i,j); printVal(printfBuffer, val); outputStream << printfBuffer; } outputStream << std::endl; } }
void incremente(int nbre, int shmid){ int i=0; ValPartage* valSon=NULL; printf("Salut, je suis le fils %d, j'incremente le compteur\n" "Je commence par m'attacher le segment de memoire\n",getpid()); if((valSon=(ValPartage*)shmat(shmid, NULL, 0)) < 0){ error("Attache segment memoire partage", ERR_ATT); } for(i=0; i < nbre; i++){ valSon->cpt+=1; printVal("incremente % d\n", valSon->cpt); } printf("je vais ecrire un reel 125.5 que mon pere va afficher\n") ; valSon->valeur = 125.5; /* on arrete le fils pour ne pas qu'il execute le code du pere, car ce code est duplique a la creation du fils */ printf("Bon, proc_fils il est temps de mourrir\n" "avant tout detachons le segment partagee\n"); if(shmdt(valSon) < 0){ error("detachement impossible", ERR_DET); } printf("Le fils se suicide\n"); exit(EXIT_FILS); }
kern_return_t smcPrintAll(void) { kern_return_t result; SMCKeyData_t inputStructure; SMCKeyData_t outputStructure; int totalKeys, i; UInt32Char_t key; SMCVal_t val; totalKeys = smcReadIndexCount(); totalKeys = 500; for (i = 0; i < totalKeys; i++) { memset(&inputStructure, 0, sizeof(SMCKeyData_t)); memset(&outputStructure, 0, sizeof(SMCKeyData_t)); memset(&val, 0, sizeof(SMCVal_t)); inputStructure.data8 = SMC_CMD_READ_INDEX; inputStructure.data32 = i; result = smcCall(KERNEL_INDEX_SMC, &inputStructure, &outputStructure); if (result != kIOReturnSuccess) continue; _ultostr(key, outputStructure.key); result = smcReadKey(key, &val); printVal(val); } return kIOReturnSuccess; }
void printSubExpr(Node* n) { switch (n->type) { case ntVal: printVal(n); break; case ntVar: printVarName(n); break; case ntOperator: printf("("); if (n->op == opCond) { printSubExpr(n->child[2]); printf("?"); printSubExpr(n->child[0]); printf(":"); printSubExpr(n->child[1]); } else if (operatorIsBinary(n->op)) { printSubExpr(n->child[0]); printOperator(n->op); printSubExpr(n->child[1]); } else { if (operatorIsPostUnary(n->op)) { printSubExpr(n->child[0]); printOperator(n->op); } else { printOperator(n->op); if (n->op == opSizeOf) printf(" "); printSubExpr(n->child[0]); } } printf(")"); break; } }
int main(int argc,char * argv[]) { int row=rowCount(argv[1]); int col=colCount(argv[1]); printf("%d %d\n",row,col); int speed; FILE * action=fopen(argv[2],"r"); char * dir=(char*)malloc(sizeof(char)*100); char ** arr; arr=init(row,col); scanVal(argv[1],arr,row,col); while(!(feof(action))) { fscanf(action,"%s",dir); if(feof(action)) break; speed=nextMove(arr,row,col,dir); } printVal(arr,row,col); return 1; }
void reviveVars(Node* n) { switch (n->type) { case ntVar: printf(" "); printVarName(n); printf(" = "); printVal(n); printf(";\n"); break; case ntOperator: if (n->child[2]) reviveVars(n->child[2]); reviveVars(n->child[0]); if (n->child[1]) reviveVars(n->child[1]); break; default:; } }
void decremente(int nbre, int shmid){ int i=0; ValPartage* valFather=NULL; printf("Je suis le pere, je decremente le compteur\n" "Je commence par m'attacher le segment de memoire\n"); if((valFather=(ValPartage*)shmat(shmid, NULL, 0)) < 0){ error("Attache segment memoire partage", ERR_ATT); } for(i=0;i < nbre; i++){ valFather->cpt-=1; printVal("decremente % d\n", valFather->cpt); } printf("je vais afficher un reel que mon fils a ecrit\n" "valeur lut par le pere = %f\n" "Bon, proc_pere il est temps de mourrir\n" "avant tout detachons le segment partagee\n", valFather->valeur); if(shmdt(valFather) < 0){ error("detachement impossible", ERR_DET); } }