Décalage espace vide dans un tableau
Résolu
smeck-saado
Messages postés
9
Statut
Membre
-
[Dal] Messages postés 6122 Date d'inscription Statut Contributeur Dernière intervention -
[Dal] Messages postés 6122 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
comment crée un espace choisi par un utilisateur vide dans le tableau ?
exemple: de tableau = 2 , 4 , 5 , 6
choix de l'utilisateur 2em position
à tableau = 2 , , 4 , 5 , 6
comment crée un espace choisi par un utilisateur vide dans le tableau ?
exemple: de tableau = 2 , 4 , 5 , 6
choix de l'utilisateur 2em position
à tableau = 2 , , 4 , 5 , 6
1 réponse
-
Salut smeck-saado,
Tu peux utiliser la fonction standardmemmove()
pour déplacer le contenu de la zone mémoire souhaitée, sous réserve que tu ne débordes pas la mémoire allouée au tableau.
http://www.cplusplus.com/reference/cstring/memmove/
Cette page comprend un exemple, avec un déplacement de 5char
vers la droite de 11char
à partir du 21ème dans un tableau de 33char
(qui ont chacun une taille de 1 byte selon le standard du C, donc le 3ème paramètresize_t num
est mis à 11).
memmove()
fonctionne avec n'importe quel type. Pour le 3ème paramètresize_t num
dans le cas d'un tableau d'entiers, tu dois indiquer le nombre de bytes à copier, donc s'il y a 3 entiers cela serasizeof int * 3
.
Dal-
-
Ce que tu indiques là ressemble plus à l'affichage d'un espace au milieu de l'affichage d'une chaîne de caractère, plutôt qu'à l'insertion d'un espace dans un tableau que tu semblais indiquer dans les deux topics que tu as créé
https://forums.commentcamarche.net/forum/affich-35742339-position-de-decalage
et
https://forums.commentcamarche.net/forum/affich-35743665-decalage-espace-vide-dans-un-tableau
C'est donc un devoir et tu dois donc avoir un énoncé pour ton devoir, plutôt que de tourner autour du pot, pourquoi ne dis tu pas quel est exactement ton énoncé et ce que tu as essayé de faire pour le résoudre.
Cela t'évitera à toi (et à moi accessoirement) de perdre du temps en exprimant un problème qui n'est pas celui que tu dois en fait résoudre. -
-
On n'est effectivement pas là pour faire l'exercice à ta place, ou pour écrire le code que tu devrais écrire.
Par contre, si tu poses une question et que montres ce que tu as fait en postant ton code et en expliquant ce qui te pose problème, ou ce qui ne fonctionne pas et que tu n'arrives pas à résoudre, moi ou d'autres membres du forum ne refuseront pas de t'apporter une aide ou de te mettre sur la voie, en fonction de la motivation, de la disponibilité et des compétences de chacun.
Je vois aussi que tu as posté un 3ème topic https://forums.commentcamarche.net/forum/affich-35743961-decalage-des-chiffre-dans-un-tableau où tu postais des images et non ton code. Il est difficile, voire impossible de t'aider si tu ne fournis pas ton code, et ce n'est pas faute pour yg_be de te l'avoir demandé, lequel a répondu à ton post avec l'intention de t'aider.
Lorsque tu postes du code sur le forum, fais le en faisant un copier-coller d'un exemple de code minimal illustrant ton problème, et met le code entre balises de code, comme cela :
<code c>
Ton code ici
</code>
(ou en cliquant sur le bouton de la barre d'outils de la fenêtre de composition de message du forum pour le langage C pour t'éviter de taper les balises, c'est le bouton avec la flèche vers le bas à gauche du bouton qui sert à poster des images)
Cela affichera ton code posté sous forme lisible avec coloration syntaxique, indentation et numérotation des lignes.
Evite à l'avenir de poster 3 sujets différents (voire plus, puisque tu dis qu'un au moins a été supprimé par la modération du forum) pour la même question.
Sur l'aide aux devoirs, lis ceci : https://www.commentcamarche.net/infos/25899-demander-de-l-aide-pour-vos-exercices-sur-ccm/
Bonne continuation,
A+ :-)
-