Attribuer Chaîne de Tableau de Caractères

Question Que L'On

J'ai

var example : array[0..15] of char;

Je veux attribuer la valeur d'une entrée à cette variable

example := inputbox('Enter Name', 'Name', '');

Dans les meilleurs scores de l'unité I de l'enregistrement et de la matrice de

type
points = record
var
  _MemoryName : array[0..15] of char;
  _MemoryScore : integer;
end;

var
rank : array[1..3] of points;

var s: string;
 a: packed array[0..15] of char;

highscoresdata.position[1]._MemoryName := StrPLCopy(a, s, Length(a)) ;

retourne -> (186): E2010 Incompatible types: 'array[0..15] of Char' and 'PWideChar'

var s: string;
 a: packed array[0..15] of char;

             s := InputBox('caption', 'Caption', 'Caption');
             FillChar(a[0], length(a) * sizeof(char), #0);
             Move(s[1], a[0], length(a) * sizeof(char));
      scores.rank[1]._MemoryName := <<tried both s and a>> ;

retourne (189): E2008 Incompatible types

  • T1 Pourquoi utiliser une longueur fixe de tableau de char plutôt que d'une chaîne de caractères? T2 Vous n'appelez pas OnKeyPress, le cadre fait pour vous. Si vous souhaitez modifier le contenu d'un TEdit de contrôle puis d'écrire Edit1.Text := 'my new text';
  • T1 Pourquoi utiliser une longueur fixe de tableau de char plutôt que d'une chaîne de caractères? -- Je suis à l'aide d'un enregistrement dans un autre fichier qui ne supportent pas de cordes autant que moi, et d'autres que j'ai entendu de savoir. T2 Vous n'appelez pas OnKeyPress, le cadre fait pour vous. -- Je sais, Mais je veux l'appeler à partir d'un autre emplacement.
  • Êtes-vous prêt pour le mariage de demain?
  • J'ai traversé l'Atlantique pour s'éloigner d'elle. Hélas, les gens d'ici sont plus intéressés que dans le royaume-UNI!!
  • Aha, c'est pourquoi vous n'avez pas ralenti comme vous l'avez promis. C'est, je comprends, vous êtes notation représentants à l'avance parce que vous devinez que vous ne pouvez pas être en mesure de toucher pendant un certain temps. Ai-je deviné? 🙂
  • Vous vous demandez pourquoi vous ne pouvez pas affecter une chaîne en un tableau de caractères, et je vous dis comment faire. Ensuite, vous nous dites qu'il ne fonctionne pas, quand il le fait travailler. Ce qui ne fonctionne pas est une chose complètement différente! Votre problème n'est pas que la chaîne n'est pas affectés à la matrice, mais plutôt que vous ne savez pas comment faire pour copier des tableaux.
  • (A) Une question par question, s'il vous plaît (B) Veuillez utiliser le peu de boutons de format et le format de votre code comme le code, donc c'est plus facile à lire! J'ai édité votre question pour vous.
  • Oh ce que sur la terre avez-vous fait à cette question. Vous poser deux questions qui nous répondre. Ensuite, vous ré-écrire la question de la prise T2 et en le remplaçant par ce! Quel gâchis. Le vote pour la fermer comme trop "localisée".
  • J'ai bien fait de lui demander de poser une seule question à la fois. 🙂
  • si vous souhaitez stocker un enregistrement dans un fichier, il est logique d'utiliser des tableaux de Char au lieu de chaînes de caractères. De cette façon, vous pouvez stocker la totalité de l'enregistrement d'un seul coup, au lieu d'avoir à stocker le contenu de la chaîne avec un code supplémentaire.
  • Si vous écrivez un enregistrement à un fichier en une seule fois, alors vous exposez à de graves problèmes de compatibilité. De toute façon, quand j'ai posé cette question dans un commentaire, je ne pouvais pas dire que l'opération était de stocker les enregistrements dans un fichier.
  • J'ai simplement répondu pourquoi quelqu'un serait d'utiliser un tableau statique dans un registre qu'une chaîne de caractères ou un tableau dynamique. Il est encore un très commun de la procédure, AFAICT. FWIW, je suis au courant des changements dans le Char de taille entre D2007 et D2009 et comment cela aurait une incidence sur la taille de l'enregistrement.

InformationsquelleAutor Skeela87 | 2011-04-28