[win32] easy debug

Description

Bon, ce code est assez leger, mais bon, il sert.
Je l'ais écris car j'en avais marre de devoir taper a chaque fois MessageBox(etc...) pour chaque string, ou alors 5/6 lignes pour un etat booleen.
Donc il suffit d'inclure un .cpp et on utilise une commande Debug qui supporte les char*, les int et les bool, libre a vous de le completer, je me ferai une joie de le rajouter dans ce cpp.

Bien sur ce code est peu commente, vous comprenez pourquoi ;-), et il ne sert a rien pour les applications console car un simple printf suffit.

Source / Exemple :


//DebugFacile.cpp

#include "stdafx.h"
#include <stdlib.h>

void Debug(char* Message)
{
	MessageBox(NULL,Message,"Easy Debug",MB_OK);
}

void Debug(int Nombre)
{
	char* Message;
	Message = new char[6];
	itoa(Nombre,Message,10);
	MessageBox(NULL,Message,"Easy Debug",MB_OK);
	delete[] Message;
}

void Debug(bool Boolean)
{
	char* Message;
	if(Boolean == true){
		Message = new char[7 + 4 + 1]; // = len("Etat = ") + len("true") + le \0
		strcpy(Message,"Etat = true");
	}
	else{
		Message = new char[7 + 5 + 1]; // = len("Etat = ") + len("false") + le \0
		strcpy(Message,"Etat = false");
	}

	MessageBox(NULL,Message,"Easy Debug",MB_OK);
	delete[] Message;
}

void Debug(char* Objet,char* String)
{
	char* Message;
	
	Message = new char[strlen(Objet) + 3 + strlen(String) + 1];
	strcpy(Message, Objet);
	strcat(Message," = \"");
	strcat(Message,String);
	strcat(Message,"\".");

	MessageBox(NULL,Message,"Easy Debug",MB_OK);
	delete[] Message;
}

void Debug(char* Objet,int Nombre)
{
	char* Message;
	char* temp;
	
	temp = new char[6];
	itoa(Nombre,temp,10); //Transforme un nombre en un char*
	
	Message = new char[strlen(Objet) + 3 + strlen(temp)+1]; // = len(Objet) + len (" = ") + len(temp) + le \0
	strcpy(Message,Objet);
	strcat(Message," = ");
	strcat(Message,temp);
	
	MessageBox(NULL,Message,"Easy Debug",MB_OK);
	
	delete[] Message;
	delete[] temp;
}

void Debug(char* Objet,bool Etat)
{
	char* Message;
	
	if(Etat == true){
		Message = new char[strlen(Objet) + 3 + 4 + 1]; // = len(Objet) + len (" = ") + len("true") + le \0
		strcpy(Message,Objet);
		strcat(Message," = true");
	}
	else{
		Message = new char[strlen(Objet) + 3 + 5 + 1]; // = len(Objet) + len (" = ") + len("false") + le \0
		strcpy(Message,Objet);
		strcat(Message," = false");
	}

	MessageBox(NULL,Message,"Easy Debug",MB_OK);

	delete[] Message;
}

Conclusion :


Je vous vois venir avec vos : Pourquoi t'a mis strcat au lieu de sprintf ?
Réponse simple, moins il y a de librairie mieux c'est, donc, comme strlen m'étais indispensable, ben j'ai utilisé les commandes de string.h comme ça ya pas de stdio.h ;-). Et de 2, la vitesse n'a içi aucun interet car MessageBox bloque le processus.

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.