Erreur de segmentation,je dois faire quoi svp

pika86 -  
KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,
j'ai un projet à réaliser,et pour le produit matrice vecteur et pour le remplissage d'une matrice il m'affiche erreur segmentation.



1 réponse

KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
Vérifier tes pointeurs ce serait bien.
0
pika86
 
justement,tout é bon...le but de la fonction que jai fait cé de fixer une colonne et calculer les éléments de cette colonne voila le code de la fonction,en sachant que Y j l'ai déclaré comme une matrice dans le prog principal:
void rempliss(double * Y,int k,int m)
{
int i;


for(i=0;i<m;i++)
{
Y[(2*i*m)+k]=2;

Y[(2*i-1)*m+k]=1;


}
}
0
KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
Il faudrait voir cette fameuse déclaration de matrice que tu utilises comme Y, et à quoi correspond m et k, mais en supposant logiquement que k est l'indice de colonne, et m la dimension de ta matrice, alors Y[(2*i*m)+k] n'est pas un indicage correct de matrice, puisque l'on irait jusqu'à la case 2m²-2m+k ce qui est bien trop puisque le maximum devrait être m²-1.

void rempliss(double * Y,int k,int m) 
{
    int i;
    
    for (i=0; i<m; i++)
        Y[m*i+k] = 1+i%2;
}
0