http://www.pronix.de -> Forum -> C-Programmieren -> Code-Schnipsel

Unterseiten

Code-Schnipsel

Moderatoren: broesel, Martin Conrad, Patrick

Thema: [EDIT] - Einfachste Codeschnipsel

  • (nur registrierte Mitglieder)

[EDIT] - Einfachste Codeschnipsel

Jones am 30.01.2006 um 14:43

Ich hoffe das ist ok, wenn ich hier einfach mal drauf los poste :)


int empty(char *string)
{
	// Funktion: prüft ob ein String leer ist
	if(strcmp(string,"")==0) return 1;  
	else return 0;
}



void center(char* string,int position,int color)
{
	 /* Funktion: Gibt Text zentriert aus 
         (geht von einem 80x25 Dos Fenster aus)*/
	 int i;
	 textcolor(color); // Bezug auf CONIO.H Farben
	 i=strlen(string);
	 i=40-(i/2);
	 gotoxy(i,position); 
         /*Höhe (in grossen Fenstern)*/
	 cprintf(string);
}


 

Re: Einfachste Codeschnipsel

Patrick (Moderator) am 30.01.2006 um 16:13

Hallo Jones.

Zitat:
Ich hoffe das ist ok, wenn ich hier einfach mal drauf los poste :)

Selbstverständlich, dafür ist das Forum ja da. Grafik: Smilie Zwinker

Um zu prüfen, ob ein String leer ist, schlage ich folgendes vor:
printf("Test:%d",string[0]?0:1);


Damit sparst du dir
1. deine Funktion empty()
2. den Funktionsaufruf empty()
3. u.U. die Headerdatei string.h
4. den Funktionsaufruf strcmp()


Die Funktion center() lässt sich noch ein wenig tunen. Mein Vorschlag wäre:
void center(char *string, int position, int color){
     /*
       Funktion: Gibt Text zentriert aus
       (geht von einem 80x25 Dos Fenster aus)
     */
     textcolor(color); // Bezug auf CONIO.H Farben
     gotoxy(40-(strlen(string)>>1), position);
     /*
       Höhe (in grossen Fenstern)
     */
     cprintf(string);
     }



Gruß,
Patrick-Oliver

--
To follow the path: look to the master, follow the master, walk with the master, see through the master, become the master.

 

Re: Einfachste Codeschnipsel

Jones am 30.01.2006 um 22:54

hm, so war das eigentlich nicht gedacht. ist klar besser so wie dus machst, in die richtung bastle ich eigentlich auch aber da ich zur zeit mit jungs zusammen arbeite die selbst noch mit ?: probleme hätten hab ich einfach mal ein paar funktionen zum unterrichtsscript entwickelt, die das besser erklären.

Da ich aber der meinung bin daß man gerade einsteigerfragen hier beantworten sollte, da c eben die einsteigersprache schlecht hin ist, auf C auch PHP basiert etc (wos eben doch genug 15 jährige gibt) denke ich daß es sinnvoll ist nicht zu scharf zu schiessen.


gotoxy(40-(strlen(string)>>1), position); 

... ist eine musterlösung. Super effizient, schnell, nimmt kein platz weg. Darum gings mir nicht!

gruß

jones
 

Re: Einfachste Codeschnipsel

Patrick (Moderator) am 31.01.2006 um 06:58

Hallo Jones.

Ich habe den Grundgedanken speziell von diesem Unterforum anders verstanden.
Jeder der möchte, kann hier seine Lösungen für eine Aufgabe vorstellen.
Zum Einen profitieren davon Leute, die eine ähnliche Aufgabe lösen wollen und zum Anderen bekommt man vieleicht hin und wieder Verbesserungsvorschlage von der Community.
Man gibt also etwas, fördert damit das "Wirgefühl" und bekommt vieleicht sogar etwas "besseres" zurück Grafik: Smilie Zwinker
Besonders nutzliche Lösungen oder Ideen werden dann auf der Startseite des Unterforums "Code Schipsel" vorgestellt.

Zitat:
Da ich aber der meinung bin daß man gerade einsteigerfragen hier beantworten sollte ... denke ich daß es sinnvoll ist nicht zu scharf zu schiessen.

Ob Einsteiger oder Profi, hier wird eigentlich jedem geholfen so gut wie es geht - vorausgesetzt, die Fragen sind halbwegs OK Grafik: Smilie Zwinker
Btw. ich bezeichne mich selbst als Anfänger und freue mich jedes Mal diebisch, wenn irgendwer aus einem Haufen Code einen übersichtlichen, aber mystisch anmutenden Codefetzen macht, welcher am Ende die selbe Aufgabe irgentwie "besser" erledigt.
Oft setze ich mich erst dann mit meinen Werkzeugen näher auseinander und lerne intensiever.
Bleiben dann noch Fragen offen, die ich nicht lösen kann, frage ich nach.

Lange Rede, kurzer Sinn:
Jeder, der möchte, kann mit deinen Funktionen arbeiten.
Jeder, der einen Vorschlag oder Fragen zum Lösungsweg hat, kann sich hier melden.

So habe ich das hier verstanden Grafik: Smilie Zwinker

Gruß,
Patrick-Oliver

--
To follow the path: look to the master, follow the master, walk with the master, see through the master, become the master.

 

Re: Einfachste Codeschnipsel

TP am 31.01.2006 um 12:25

Zitat:

Da ich aber der meinung bin daß man gerade einsteigerfragen hier beantworten sollte, da c eben die einsteigersprache schlecht hin ist, auf C auch PHP basiert etc (wos eben doch genug 15 jährige gibt) denke ich daß es sinnvoll ist nicht zu scharf zu schiessen.


Wie Patrick schon sagte, ist es egal, ob Du Anfänger oder "Profi" bist. In diesem Forum postet jemand eine Funktion und die Community versucht diese zu verbessern, damit man am Ende eine wiederverwendbare, schnelle und gut lesbare Funktion hat.

C ist definitiv nicht "die Einsteigersprache", sei lieber vorsichtig mit solchen Äußerungen Grafik: Smilie Zwinker.
 
  • (nur registrierte Mitglieder)