Windows Azure Cloud Storage ermöglicht es Ihnen bereits ab 0,10€ pro GB/Monat die Vorteile der Cloud zu nutzen.
Hypercell ein ] Hypercell aus ] Zeige Navigation ] Verstecke Navigation ]
c++.de  
   
Advanced Developers Conference     
Bücher-Shop mit Amazon (Buchkategorien)C++ : Referenzen zu C++ : C++ Builder : Visual C++ : C# : Java : Spieleprogrammierung : Systemprogrammierung Linux : Software-Entwicklung : .NET : Compilertechnik : Algorithmen & Datenstrukturen : Objektorientierung : Entwurfsmuster : UML : eXtreme Programming : Scrum : Projektmanagement : Software-Testing : Datenbanken : Tom DeMarco : Dilbert : User Friendly
C/C++ Forum :: Projekt: OS-Development  ::  Code Styleguide  
Gehen Sie zu Seite Zurück  1, 2, 3, 4, 5, 6, 7  Weiter
  Zeige alle Beiträge auf einer Seite
Auf Beitrag antworten
Autor Nachricht
volkard
Moderator

Benutzerprofil
Anmeldungsdatum: 06.04.2000
Beiträge: 24258
Beitrag volkard Moderator 13:06:53 01.11.2009   Titel:              Zitieren

Erhard Henkes schrieb:
Am Unklarsten ist mir die Rolle von "char" bezüglich int8_t bzw. uint8_t.

char dürfte ein eigener typ sein, wobei das aber nicht beobachtet werden kann. er verhält sich genau wie int8_t oder wie uint8_t, je nach maschine. das verhalten kann mit compilerschalter -funsigned-char oder -fsigned-char überschrieben werden.

_________________
http://www.venganza.info/
plonk fürs Forum v1.02
Erhard Henkes
Mitglied

Benutzerprofil
Anmeldungsdatum: 25.04.2000
Beiträge: 11885
Beitrag Erhard Henkes Mitglied 13:18:31 01.11.2009   Titel:              Zitieren

Zitat:
compilerschalter -funsigned-char oder -fsigned-char

Danke für den Tipp! Ich habe mich innerlich nämlich auf -fsigned-char eingerichtet. Hoffe, das ist ok. das hier hatte mich etwas irritiert, als ich den Cast (int8_t*) einbauen musste:
C/C++ Code:
int8_t* exception_messages[] =
{
    (int8_t*)"Division By Zero",        (int8_t*)"Debug",   ...
C/C++ Code:
int8_t* exception_messages[] =
{
(int8_t*)"Division By Zero", (int8_t*)"Debug", ...
C/C++ Code:
int8_t* exception_messages[] =
{
    (int8_t*)"Division By Zero",        (int8_t*)"Debug",   ...

Ist das überflüssig, wenn man -fsigned-char verwendet?

Ich habe ja typedef signed char int8_t; in os.h

_________________
OS-Development-, C++, Win32-API-, MFC-, Chemie-, Robotik- und Flugsimulator-Tutorials
http://www.henkessoft.de/index.htm


Zuletzt bearbeitet von Erhard Henkes am 13:21:54 01.11.2009, insgesamt 3-mal bearbeitet
volkard
Moderator

Benutzerprofil
Anmeldungsdatum: 06.04.2000
Beiträge: 24258
Beitrag volkard Moderator 13:25:45 01.11.2009   Titel:              Zitieren

C/C++ Code:
char* exception_messages[] =
{
    "Division By Zero",        "Debug",   ...
C/C++ Code:
char* exception_messages[] =
{
"Division By Zero", "Debug", ...
C/C++ Code:
char* exception_messages[] =
{
    "Division By Zero",        "Debug",   ...

?
Also char für Texte und (u)int8_t nur, wenn das Ding als Zahl betrachtet wird.

_________________
http://www.venganza.info/
plonk fürs Forum v1.02
Erhard Henkes
Mitglied

Benutzerprofil
Anmeldungsdatum: 25.04.2000
Beiträge: 11885
Beitrag Erhard Henkes Mitglied 18:13:58 02.11.2009   Titel:              Zitieren

@Volkard: Ja, das ist zwar nicht wirklich logisch, erscheint aber praktisch vernünftig. Ich werde das wieder umstellen, damit wir möglichst portabel bleiben.

Zitat:
Also char für Texte und (u)int8_t nur, wenn das Ding als Zahl betrachtet wird.
char wird für Texte (Strings) ab Rev. 18 (SVN) wieder Stück für Stück eingebaut.

_________________
OS-Development-, C++, Win32-API-, MFC-, Chemie-, Robotik- und Flugsimulator-Tutorials
http://www.henkessoft.de/index.htm


Zuletzt bearbeitet von Erhard Henkes am 12:51:13 15.11.2009, insgesamt 1-mal bearbeitet
Erhard Henkes
Mitglied

Benutzerprofil
Anmeldungsdatum: 25.04.2000
Beiträge: 11885
Beitrag Erhard Henkes Mitglied 20:11:36 02.11.2009   Titel:              Zitieren

Ich habe einen ersten Entwurf unseres Styleguide als Diskussionsbasis erstellt:
http://www.henkessoft.de/OS_Dev/Downloads/PrettyOS_Styleguide_C.zip

_________________
OS-Development-, C++, Win32-API-, MFC-, Chemie-, Robotik- und Flugsimulator-Tutorials
http://www.henkessoft.de/index.htm
Erhard Henkes
Mitglied

Benutzerprofil
Anmeldungsdatum: 25.04.2000
Beiträge: 11885
Beitrag Erhard Henkes Mitglied 09:39:51 28.02.2010   Titel:              Zitieren

Aus dem IRC: <MrX> Ich schlage die Einführung eines Punktes bezüglich Deklaration im Schleifenkopf vor.

Wir sind gerade dabei, alle for(...) auf c99 umzustellen, mit Deklaration und Scope der Laufvariablen nur innerhalb der Schleife.

_________________
OS-Development-, C++, Win32-API-, MFC-, Chemie-, Robotik- und Flugsimulator-Tutorials
http://www.henkessoft.de/index.htm


Zuletzt bearbeitet von Erhard Henkes am 09:43:05 28.02.2010, insgesamt 1-mal bearbeitet
abc.w
Mitglied

Benutzerprofil
Anmeldungsdatum: 25.04.2008
Beiträge: 1346
Beitrag abc.w Mitglied 11:13:35 28.02.2010   Titel:              Zitieren

Erhard Henkes schrieb:
Wir sind gerade dabei, alle for(...) auf c99 umzustellen, mit Deklaration und Scope der Laufvariablen nur innerhalb der Schleife.

Das ist alles ok, solange die Schleifenvariable nicht außerhalb des Schleifenkörpers benutzt wird oder irgendeine andere "überschattet" (hier kann man sich mit dem -Wshadow absichern) ;)

Und "for(...)" ist kein Funktionsaufruf und da gehört ein Leerzeichen hin "for (...)" ;)

Auch bei Ausdrücken: Nicht "for(i=0;i<max;++i)", sondern "for (i = 0; i < max; ++i)" ;)

"Coding Style"... ein heikles Thema ;)
Mr X
Mitglied

Benutzerprofil
Anmeldungsdatum: 18.09.2007
Beiträge: 1047
Beitrag Mr X Mitglied 11:30:43 28.02.2010   Titel:              Zitieren

Ich bin gegen ein Leerzeichen hinter for. Ich bin für diese Schreibweise:
for(int i = 0; i < x; ++i)
Wshadow wäre aber in der Tat nützlich. Das sollten wir einführen.
abc.w
Mitglied

Benutzerprofil
Anmeldungsdatum: 25.04.2008
Beiträge: 1346
Beitrag abc.w Mitglied 13:51:45 28.02.2010   Titel:              Zitieren

Mr X schrieb:
Ich bin gegen ein Leerzeichen hinter for. Ich bin für diese Schreibweise:
for(int i = 0; i < x; ++i)

Musst aber zugeben, dass for kein Funktionsaufruf ist(nein,Quatsch,ist nut ein Scherz;))

Nach Möglichkeit auch kein int(sonst sollte x auch ein int sein).
;)
Mr X
Mitglied

Benutzerprofil
Anmeldungsdatum: 18.09.2007
Beiträge: 1047
Beitrag Mr X Mitglied 14:10:19 28.02.2010   Titel:              Zitieren

warum kein "int"? Was meinst Du damit?

Das x und i den gleichen Typ haben sollen?
C/C++ Forum :: Projekt: OS-Development  ::  Code Styleguide  
Gehen Sie zu Seite Zurück  1, 2, 3, 4, 5, 6, 7  Weiter
Auf Beitrag antworten

Zeige alle Beiträge auf einer Seite




Nächstes Thema anzeigen
Vorheriges Thema anzeigen
Sie können keine Beiträge in dieses Forum schreiben.
Sie können auf Beiträge in diesem Forum nicht antworten.
Sie können Ihre Beiträge in diesem Forum nicht bearbeiten.
Sie können Ihre Beiträge in diesem Forum nicht löschen.
Sie können an Umfragen in diesem Forum nicht mitmachen.

Powered by phpBB © 2001, 2002 phpBB Group :: FI Theme

c++.de ist Teilnehmer des Partnerprogramms von Amazon Europe S.à.r.l. und Partner des Werbeprogramms, das zur Bereitstellung eines Mediums für Websites konzipiert wurde, mittels dessen durch die Platzierung von Werbeanzeigen und Links zu amazon.de Werbekostenerstattung verdient werden kann.

Die Vervielfältigung der auf den Seiten www.c-plusplus.de, www.c-plusplus.info, www.c-sar.de, www.c-plusplus.net und www.baeckmann.de enthaltenen Informationen ohne eine schriftliche Genehmigung des Seitenbetreibers ist untersagt (vgl. §4 Urheberrechtsgesetz). Die Nutzung und Änderung der vorgestellten Strukturen und Verfahren in privaten und kommerziellen Softwareanwendungen ist ausdrücklich erlaubt, soweit keine Rechte Dritter verletzt werden. Der Seitenbetreiber übernimmt keine Gewähr für die Funktion einzelner Beiträge oder Programmfragmente, insbesondere übernimmt er keine Haftung für eventuelle aus dem Gebrauch entstehenden Folgeschäden.