je tentais de faire un programme, mais, quand elle est sprintf
à l'équation, je reçois l'erreur suivante:étrange erreur SIGABRT
Program received signal: "SIGABRT"
Mon sprintf
est écrit comme suit:
int i;
int g;
char b[6];
sprintf(b, "%d", i*g);
Si vous devez voir le code tout ici est (mais vous ne probablement pas, mais juste au cas où):
#include <stdio.h>
#include <stdlib.h>
int main (int argc, const char * argv[]) {
int i;
int g;
char b[6];
char temp[6];
char c[6];
int lol;
int revlol;
int assign;
for (i = 100; i < 1000; i++)
{
sprintf(b, "%d", i*g);
for (g = 100; g < 1000; g++)
{
for (lol = 5; lol > -1; lol--)
{
for (revlol = 0; revlol < 6; revlol++)
{
temp[lol] = b[revlol];
}
if (temp == b)
{
for (assign = 0; assign < 6; assign++)
{
c[assign] = b[assign];
}
}
}
}
}
printf("%s", c);
}
Mais, le problème ne se produit que lorsque j'utilise sprintf
. Notez également: je n'utilise pas itoa
car mon compilateur ne le permet pas.
Toute aide serait appréciée!
Je n'ai pas initialisé 'g' mais, même après avoir placé' sprintf' après la boucle for qui initialise 'g', il donne toujours la même erreur. –
Oups J'ai écrit le top exemple faux. –
Je le pensais. Notez le commentaire ajouté sur la taille de 'b'. –