
* Jan Trippler schrieb am 03.Aug.2002:
On Sam, 03 Aug 2002 at 20:09 (+0200), Thorsten Haude wrote:
* Jan Trippler <Jan.Trippler@t-online.de> [02-08-03 16:53]:
Es geht doch nur darum, daß diese ganze C-Eigenheit mit dem Zeiger-auf-Chararacter offensichtlich und bekannterweise nicht wasserdicht ist. Darum sollte man bei ihrer Benutzung keine Haare spalten, sondern auf Nummer sicher gehen.
Ein String ist immer ein Zeiger auf ein Byte, bei jeder Programmierpsrache. Es ist nur manchmal gut vor dem Anwender versteckt, aber wie soll man sonst ein String definieren, wenn nicht als Zeiger?
Die Haarespalterei machst Du hier. Du behauptest seit Tagen, strcmp liest über die 0 hinweg und das ist Stuss. Du behauptest seit Tagen,
Natürlich ist es Stuss. Es muß Stuss sein, wenn es nicht Stuss wäre, wie könnte dann ein strcmp jemals ein gleich, sprich eine 0 als Rückgabewert habe? Die 0 wird doch dann zurückgegeben, wenn beide Strings gleich sind. Gleich bis zum Abschließenden \0. Wenn dass \0 überlesen wird, so müßte doch bis in aller Ewigkeit, oder bis zum Speicherende, weitergemacht werden. Oder bist, weit hinter dem \0 doch ein Unterschied festgestellt wird und dann eine 1 oder -1 zurückgegeben wird.
dass die Benutzung von strcmp eine Sicherheitslücke ist und das ist Stuss (es sei denn, Du sorgst in Deinen Programmen nicht dafür, dass Strings nullterminiert sind - dann kriegst Du Probleme mit _allen_ Stringfunktionen, selbst die Längenbestimmung mittels strlen raucht dann ab, und strncmp kann in solchen Fällen totalen Schrott liefern - siehe mein Beispiel in der anderen Mail). *Diese ganze unsichere C-Eigenheit* ist dann und nur dann unsicher, wenn sich der Programmierer eben nicht um eine saubere Null-Terminierung (innerhalb der definierten Grenzen des char-Arrays) kümmert.
So ist es. Bernd -- Was ist quoten? Quoten ist das Zitieren aus einer mail, der man antwortet. Und wie macht man es richtig? Zitate werden mit "> " gekennzeichnet. Nicht mehr als nötig zitieren. Vor den Abschnitten das Zitat, auf das man sich bezieht, mit einer Zeile Abstand oben und unten. |Zufallssignatur 12