Tableau rempli par la valeur d un byte

dan001be Messages postés 4 Date d'inscription jeudi 7 décembre 2000 Statut Membre Dernière intervention 15 mars 2009 - 24 déc. 2008 à 13:37
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 - 26 déc. 2008 à 11:52
bonjour a tous
je débute en c#
je devrais pouvoir stocker la valeur d une variable byte indicée  a 10! byte[10]
ent par ex 10 val (128,0,255,56,etc)
comment declarer mon tableau?
j ai essayer
public

byte[,] array1 =
new
byte[5,5];
for

(int k 0; k < data.Length; k++) array1[Fnc, Nr] data[k];
si data[k] ne contient qu'une valeur ca marche!!

ma variable byte que si elle contient qu une valeur!!
merci de vouloir m aider
Dan

5 réponses

ed73 Messages postés 276 Date d'inscription lundi 8 septembre 2008 Statut Membre Dernière intervention 15 avril 2013 2
24 déc. 2008 à 14:59
Bonjour,

Il y a  au moins un truc qui ne va pas dans ta boucle, Fnc et Nr ne changent pas. Donc en supposant que Fnc et Nr soient des entiers initialisés à 0, ta boucle n'affectera que array1[0,0].

N'ayant pas le reste du code, je ne peux rien dire de plus, mais il me semble que ceci serait plus adapté :

byte []array1 = new
byte[10];

for(int k 0; k < data.Length; k++) array1[k] data[k];
0
dan001be Messages postés 4 Date d'inscription jeudi 7 décembre 2000 Statut Membre Dernière intervention 15 mars 2009
24 déc. 2008 à 16:39
merci pour ta prompte réponse
en fait fnc et nr sont des variables qui changent a l appel de la fonction
fnc = 1  à 4
nr = 1 a 4
mais j ai ajouter une 3ieme dimension a mon tableau et alors j arrive a enregistrer toute les valeurs contenues ds le byte.
mais il me semblait qu'il y avait moyen de redimensioner un tableau au moment ou c'est nécessaire dans le code!
Dan
0
nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
24 déc. 2008 à 18:31
Salut,

Il me semble pas que le redim des tableaux est possible.

C'est de la construction d'un nouveau tableau et recopie

le redim preserve de vb6 (n'existe pas)

VB:

Dim YourArray() As Integer

...

ReDim Preserve YourArray(i)

C#:

int[] YourArray;

...

int[] temp = new int[i + 1];

if (YourArray != null)

   
Array.Copy(YourArray, temp, Math.Min(YourArray.Length, temp.Length));

YourArray = temp;
0
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
25 déc. 2008 à 11:08
nhervagault> Puisque tu fais un new, il ne s'agit pas d'un redim mais bien de la création d'un nouvel objet. Et il n'y a effectivement pas d'autres solutions....

        public static Array ResizeArray(Array src, int length)
        {
            Array newArray = null;
            if (src != null)
            {
                newArray = Array.CreateInstance(src.GetType().GetElementType(), length);
                Array.Copy(src, newArray, Math.Min(src.Length, length));
            }
            return newArray;
        }

<hr />
-Blog-
-Site Perso-
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
26 déc. 2008 à 11:52
Salut,

De toute façon de ce que je sais le ReDim VB.NET n'est au final qu'une facilité qui masque une création de nouveau tableau avec copie des données, rien de magique en dessous.

/*
coq
MVP Visual C#
CoqBlog
*/
0
Rejoignez-nous