@"a"

Sujets variés concernant le développement en PureBasic
AWEAR
Messages : 264
Inscription : ven. 28/oct./2005 8:20
Localisation : Mayotte ( 976 ), Océan Indien, France

@"a"

Message par AWEAR »

Je crois que je suis choqué à vie :

Code : Tout sélectionner

Debug peeks(@"a")
Debug peeks(@"z")
PokeS(@"a", "55555")
Debug PeekS(@"a")
Debug PeekS(@"z")
C'est normal me dira-t-on, mais je trouve ça choquant.
Je veux savoir ce qu'il y a d'écrit dans une chaîne contenant le caractère "a", et on me répond 5 fois le caractère "5", moi je trouve pas ça normal.
Bon, ok, c'est moi qui ai écrit "55555" dedans :lol:, mais bon, je demande quand même ce qu'il y a d'écrit dans la chaîne contenant le caractère "a".

Bon ben voilà, c'est pas super grave, et ça ne mérite peut-être même pas de faire le sujet d'un post, mais tant pis, c'est fait.
La vie est une rose dont il faut accepter les épines, mais la mienne est fannée, arrosée par le goût de mes larmes. (Soprano)
Avatar de l’utilisateur
Flype
Messages : 2431
Inscription : jeu. 29/janv./2004 0:26
Localisation : Nantes

Message par Flype »

Ca me parait normal ton truc.
Tu écris tranquillement dans la mémoire vive sans te soucier d'où çà écrit alors çà provoque ce qu'on appelle communément des effets de bord.
Tu auras le même problème dans tout les langages...

Par contre si tu te réserves la mémoire pour il n'y a pas de soucis :

Code : Tout sélectionner

a$ = "a"
z$ = "z"

Debug PeekS(@a$)
Debug PeekS(@z$)
PokeS(@a$, "55555")
Debug PeekS(@a$)
Debug PeekS(@z$)
Image
Dr. Dri
Messages : 2527
Inscription : ven. 23/janv./2004 18:10

Message par Dr. Dri »

Ca peut tout de même être utile... Tu compiles ton exe, tu crypte les chaines statiques avec une méthode qui conserve la longueur (xor par exemple) et bien entendu ton exe dispose d'une routine pour les décrypter ^^.

Dri :)
Avatar de l’utilisateur
Flype
Messages : 2431
Inscription : jeu. 29/janv./2004 0:26
Localisation : Nantes

Message par Flype »

Peut etre mais çà marche si tu alloues au minimum la place nécessaire avant d'écrire comme un barbare dans la mémoire vive.

Regardes, 4 espaces de plus dans la chaine et çà fonctionne.

Code : Tout sélectionner

Debug PeekS(@"a")
Debug PeekS(@"z")
PokeS(@"a    ", "55555")
Debug PeekS(@"a")
Debug PeekS(@"z")
Image
Dr. Dri
Messages : 2527
Inscription : ven. 23/janv./2004 18:10

Message par Dr. Dri »

Je parle bien d'un algo qui conserve la taille de la chaine, pour justement éviter le probleme évoqué dans le topic

Dri
AWEAR
Messages : 264
Inscription : ven. 28/oct./2005 8:20
Localisation : Mayotte ( 976 ), Océan Indien, France

Message par AWEAR »

Flype a écrit :Peut etre mais çà marche si tu alloues au minimum la place nécessaire avant d'écrire comme un barbare dans la mémoire vive.

Regardes, 4 espaces de plus dans la chaine et çà fonctionne.

Code : Tout sélectionner

Debug PeekS(@"a")
Debug PeekS(@"z")
PokeS(@"a    ", "55555")
Debug PeekS(@"a")
Debug PeekS(@"z")
Comment ça j'écris comme un barbare dans la mémoire vive, moi ?
Comprends pas.. :lol:
La vie est une rose dont il faut accepter les épines, mais la mienne est fannée, arrosée par le goût de mes larmes. (Soprano)
Patrick88
Messages : 1564
Inscription : mer. 21/janv./2004 18:24

Message par Patrick88 »

AWEAR a écrit : Comment ça j'écris comme un barbare dans la mémoire vive, moi ?
Comprends pas.. :lol:
bin comme lui , quoi... p't'êtes avec autant de finesse....

Image

:lol: :lol: :jesors: #jaune

pat
AWEAR
Messages : 264
Inscription : ven. 28/oct./2005 8:20
Localisation : Mayotte ( 976 ), Océan Indien, France

Message par AWEAR »

Oui mais non mais ça va plus du tout là, PB il fait n'importe quoi à force d'écouter mes conneries :lol:

Code : Tout sélectionner

PokeS(@"true", PeekS(@"false"))
x$ = "true"
Debug x$
Debug "true"
La vie est une rose dont il faut accepter les épines, mais la mienne est fannée, arrosée par le goût de mes larmes. (Soprano)
Répondre