Erreurs, bugs, questions - page 2877

 
Igor Makanu:

Il m'arrive aussi de faire défiler le code vers le haut ou vers le bas, puis de chercher l'endroit où j'ai modifié le code et où se trouve le curseur.

Si j'ai édité, j'utilise Ctrl + Z (annuler les changements) ME va au curseur et immédiatement Ctrl + Y (annuler les changements).

De même ! Aussi ALT + GAUCHE/DROITE. Mais vous devez toujours obtenir le nom de la fonction. Ou allez à sa définition.

 
Quelle est la différence entre ces drapeaux ?
FileSelectDialog(NULL, NULL, NULL, FSD_WRITE_FILE, FileNames, NULL);
FileSelectDialog(NULL, NULL, NULL, 0, FileNames, NULL);
 
Le problème des messages privés, encore une fois ...
 
Vladimir Pastushak:
Le problème des messages privés, encore une fois ...

Dans le champ de recherche, tapez le nom de toute personne qui vous a écrit. Ensuite, tout reviendra à la normale. Je viens de le vérifier aujourd'hui.

 
Les chats sont en cours de mise à jour, désolé pour le désagrément temporaire.
 
typedef datetime (*TIME)( void ); 

datetime Func() { return(0); }

TIME T = TimeCurrent;  // Error.
TIME T2 = Func;        // OK.


Cela a-t-il toujours été le cas que vous ne pouvez pas faire des pointeurs vers les fonctions du personnel ?

 
Est-il exact qu'il n'y a pas d'erreur ?
void OnStart()
{
  for (int i = 0; i < 5; i++) // OK
}
 
fxsaber:

Est-ce que cela a toujours été le cas que vous ne pouviez pas faire des pointeurs vers les fonctions du personnel ?

Oui, ça a toujours été impossible.

fxsaber:
Est-il exact qu'il n'y a pas d'erreur ?

Il s'agit au moins d'un oubli car les entrées suivantes sont équivalentes

void f1() { for  (; false ;) } //нормально ???
void f2() { while(  false  ) } //Error: '}' - semicolon expected

Par conséquent, le comportement du compilateur doit être identique, ce qui est différent.

 

vous devez obtenir 1 uint à partir de 2 ushort

il y a 2 options(jaune / vert) :

input ushort inA = USHORT_MAX;
input ushort inB = USHORT_MAX;
input ushort inC = USHORT_MAX;
input ushort inD = USHORT_MAX;
uint param1 = (uint)inA << (sizeof(ushort) * 8) | inB;
uint param2 = (uint)inC << (sizeof(ushort) * 8) | inD;
union ushortTouint
{
   uint param[2];
   ushort in[4];
};
ushortTouint param_arr;
//+------------------------------------------------------------------+
void OnStart()
{
   printf("ver 1:  %X , %X", param1, param2);
   param_arr.in[0] = inA;
   param_arr.in[1] = inB;
   param_arr.in[2] = inC;
   param_arr.in[3] = inD;
   printf("ver 2:  %X , %X", param_arr.param[0], param_arr.param[1]);
}
//+------------------------------------------------------------------+

comment savoir quelle variante de conversion fonctionnerait le plus rapidement dans l'optimisation (je vais utiliser 10 uint et respectivement 20 ushort)

 
Igor Makanu:

quelle variante de conversion sera la plus rapide lors de l'optimisation

Ceci ne sera appelé qu'une fois par passe. Par conséquent, cela ne fait aucune différence.

Raison: