Articles of struct

Comment la fonction retourne-t-elle ACTUELLEMENT la variable struct dans C?

Comment une valeur de retour de fonction est claire pour moi, juste pour démarrer: int f() { int a = 2; return a; } Maintenant, la mémoire est empilée et sa durée de vie se situe dans le f() afin de renvoyer la valeur copiée dans un registre spécial qui est lu par l’appelant car […]

Les structures emballées sont-elles portables?

J’ai du code sur un microcontrôleur Cortex-M4 et je souhaite communiquer avec un PC en utilisant un protocole binary. Actuellement, j’utilise des structures compressées utilisant l’atsortingbut packed spécifique à GCC. Voici un aperçu: struct Sensor1Telemetry { int16_t temperature; uint32_t timestamp; uint16_t voltageMv; // etc… } __atsortingbute__((__packed__)); struct TelemetryPacket { Sensor1Telemetry tele1; Sensor2Telemetry tele2; // etc… […]

taille de struct en C

Duplication possible: Pourquoi sizeof pour une structure n’est-il pas égal à la sum de sizeof de chaque membre? Considérons le code C suivant: #include struct employee { int id; char name[30]; }; int main() { struct employee e1; printf(“%d %d %d”, sizeof(e1.id), sizeof(e1.name), sizeof(e1)); return(0); } La sortie est la suivante: 4 30 36 Pourquoi […]

Comment vérifier si une variable est d’un certain type (comparer deux types) en C?

En C (pas en C ++ / C #) comment vérifier si une variable est d’un certain type? Par exemple, quelque chose comme ceci: double doubleVar; if( typeof(doubleVar) == double ) { printf(“doubleVar is of type double!”); } Ou plus généralement: comment comparer deux types afin que compare(double1,double2) soit évalué à true, et compare(int,double) sera […]

Comment créer une structure ‘Nullable’ par définition?

struct AccountInfo { Ssortingng Username; Ssortingng Password; } maintenant si je veux avoir une instance Nullable , je devrais écrire: Nullable myAccount = null; Mais je veux rendre la struct Nullable par nature et elle peut être utilisée comme ça (sans utiliser Nullable ): AccountInfo myAccount = null;

A quoi servent les structures et les unions anonymes en C11?

C11 ajoute, entre autres, «Structures et unions anonymes». Je me suis penchée sur la question, mais je n’ai pas trouvé d’explication claire sur le moment où des structures anonymes et des syndicats seraient utiles. Je demande parce que je ne comprends pas complètement ce qu’ils sont. Je comprends que ce sont des structures ou des […]

Valeur par défaut d’une structure Objective-C et comment tester

J’essaie de tester si une propriété a déjà été définie. Je sais qu’avec des objects que j’ai: CGRect ppGoalFrame; LocalPlaySetup *localPlaySetup; et je peux tester if (localPlaySetup == nil) mais si je tente de tester le CGRect avec == nil ou == NULL if (ppGoalFrame == nil) Je reçois invalid operands to binary == (have […]

Remplissage de structure en C ++

Si j’ai une struct en C ++, n’y a-t-il aucun moyen de le lire / écrire en toute sécurité dans un fichier compatible avec plusieurs plates-formes / compilateurs? Parce que si je comprends bien, chaque compilateur «tamponne» différemment en fonction de la plate-forme cible.

Pourquoi le compilateur ne génère-t-il pas d’erreurs de compilation si un type d’argument incorrect est transmis à une liste d’initialisation de struct?

J’ai défini une structure, qui a un constructeur: struct MyStruct { MyStruct(const int value) : value(value) { } int value; }; et les objects suivants: int main() { MyStruct a (true); MyStruct b {true}; } Mais je n’ai reçu aucune erreur de compilation, que ce soit avec MVS2015 ou Xcode 7.3.1. Pourquoi je ne reçois […]

Déclarations avant de struct sans nom

Question Bounty: Donc, ces deux Foo ne sont pas la même chose. Bien. La deuxième forme est donnée dans une bibliothèque. Comment puis-je le déclarer à l’avance, étant donné que je ne peux pas le changer? J’ai toujours pensé que C et C ++ permettaient des déclarations répétées à condition qu’il n’y ait pas de […]