J’ai une structure prédéfinie à utiliser: typedef struct somestruct_s { int s; union { unsigned char *ptr; unsigned char l_ptr[sizeof(char *)]; }; }somestruct_t, *somestruct; Il contient l’union pour réduire l’utilisation de la mémoire. Je sais que la taille peut varier en raison de la compilation m32 et m64 (taille du pointeur). Ma question est de […]
J’essaie de recevoir un numéro de l’utilisateur. Et créez un tableau avec ce nombre, mais dans une fonction. Voici mes quelques tentatives, je me retrouve dans des erreurs d’exécution. L’aide est très appréciée. #include #include int* Init(int* p, int num); int main() { int *p; int num, i; puts(“Enter num of grades:”); scanf(“%d”, &num); Init(&p, […]
Étant donné que MPI n’offre pas de compatibilité binary, mais uniquement la compatibilité de source, nous sums obligés d’expédier notre code source de solutionneur aux clients pour qu’ils utilisent notre solution de résolution avec leur version préférée de MPI. Nous avons atteint le point où nous ne pouvons plus offrir de code source. En conséquence, […]
Je voudrais créer une fonction “lazy” qui accepte une fonction avec un nombre indéterminé d’arguments en paramètre. De quel type ai-je besoin ou quels moulages doivent être faits? Ensuite, je veux exécuter cette chose plus tard dans la fonction “évaluer”. Comment puis-je alors passer les arguments que j’ai passés avant à la fonction “lazy” au […]
ce: char *buf = NULL; scanf(“%ms”, &buf); obtiendra un tampon de caractères alloué dynamicment. Je sais que cela se limite au code compilé avec Gcc (et plus précisément à la version 2.7 de glibc). Je suis également conscient que la méthode “correcte” et portable consiste simplement à utiliser malloc() (et ses amis) pour obtenir la […]
Comment lier un fichier binary de manière à être compatible avec deux versions existantes d’une bibliothèque ayant SONAME en conflit? Ces deux versions ne partagent pas le même préfixe SONAME. L’un est libcapi10.so.3 et l’autre est libcapi10.so.4. Je ne peux pas les recomstackr puisque je les ai sous forme binarys, et comme ce sont des […]
Je comprends comment les bibliothèques statiques / dynamics sont utilisées par l’éditeur de liens / le chargeur. Cependant, pourquoi ne pas avoir un seul type de fichier de bibliothèque accompagné d’indicateurs de compilation qui indiquent comment la bibliothèque doit être liée (statique vs dynamic)? Par le simple fait que nous avons des bibliothèques statiques et […]
J’écris une bibliothèque pour divers calculs mathématiques en C. Plusieurs d’entre eux ont besoin d’espace «scratch» – mémoire utilisée pour les calculs intermédiaires. L’espace requirejs dépend de la taille des entrées, il ne peut donc pas être alloué de manière statique. La bibliothèque sera généralement utilisée pour effectuer plusieurs itérations du même type de calcul […]
Il existe différentes manières de créer des chaînes dynamics en C (avec une longueur qui change constamment). Après quelques recherches sur google, le moyen principal de le faire est d’utiliser realloc () . Une façon dont j’ai implémenté cela consiste à utiliser des listes chaînées avec des blocs de 32 octets pour chaque nœud. Je […]
Si j’alloue dynamicment de la mémoire dans mon programme à l’aide de malloc() mais que je ne libère pas la mémoire pendant l’exécution du programme, la mémoire allouée dynamicment sera-t-elle libérée une fois le programme terminé? Ou, s’il n’est pas libéré et que j’exécute le même programme encore et encore, est-ce qu’il allouera les différents […]