Questions marquées «c»

C est un langage de programmation à usage général utilisé pour la programmation système (OS et embarqué), les bibliothèques, les jeux et les plateformes multiples. Cette balise doit être utilisée avec des questions générales concernant le langage C, tel que défini dans la norme ISO 9899 (la dernière version, 9899: 2018, sauf indication contraire - également balise les demandes spécifiques à la version avec c89, c99, c11, etc.). C est distinct de C ++ et il ne doit pas être combiné avec la balise C ++ en l'absence d'une raison rationnelle.



4
Calcul d'une racine imbriquée en C
On m'a demandé de calculer l'expression racine imbriquée suivante en utilisant la récursivité uniquement. J'ai écrit le code ci-dessous qui fonctionne, mais ils nous ont permis d' utiliser une seule fonction et 1 entrée nà cet effet et non 2 comme je l'ai utilisé. Quelqu'un peut-il m'aider à transformer ce …
9 c  recursion  sqrt 

1
Paramètre principal C
J'ai écrit un code qui doit afficher les paramètres principaux, mais quand je l'ai compilé et tapé dans le programme "*" montre ma structure de fichier. La commande en cmd ressemble à ceci:program.exe 1 2 3 * #include <stdio.h> #include <stdlib.h> int main(int argc, char const* argv[]) { for (int …


1
Conversion en void ** sur différents compilateurs
J'ai exécuté le code suivant via différents compilateurs: int main() { float **a; void **b; b = a; } D'après ce que j'ai pu rassembler, il nevoid ** s'agit pas d' un pointeur générique, ce qui signifie que toute conversion à partir d'un autre pointeur ne devrait pas compiler ou …
9 c++  c  cuda 

1
Empêcher le processus d'ouvrir un nouveau descripteur de fichier sous Linux mais autoriser la réception de descripteurs de fichier via des sockets
Je travaille actuellement sur un projet où j'ai un processus parent qui configure un socketpair, des fourches et utilise ensuite ce socketpair pour communiquer. L'enfant, s'il veut ouvrir un fichier (ou toute autre ressource basée sur un descripteur de fichier) doit toujours aller vers le parent, demander la ressource et …
9 c  linux  system-calls 


3
Pourquoi LLVM alloue une variable redondante?
Voici un simple fichier C avec une définition d'énumération et une mainfonction: enum days {MON, TUE, WED, THU}; int main() { enum days d; d = WED; return 0; } Il transpile vers le LLVM IR suivant: define dso_local i32 @main() #0 { %1 = alloca i32, align 4 %2 …
9 c  llvm  llvm-codegen 

1
CHAR_WIDTH non déclaré
J'obtiens l'erreur ‘CHAR_WIDTH’ undeclared lorsque j'essaie de compiler ce programme simple: #include <stdio.h> #include <limits.h> int main() { printf("CHAR_BIT = %d\n", CHAR_BIT); printf("CHAR_WIDTH = %d\n", CHAR_WIDTH); return (0); } avec gcc ./show_char_width.c -o show_char_width et gcc: GNU C17 (Ubuntu 8.3.0-6ubuntu1) version 8.3.0 (x86_64-linux-gnu) compilé par GNU C version 8.3.0, GMP …
9 c  gcc 



2
Qu'est-ce que l'encapsulation au moment de la compilation en C?
Lorsque je recherchais les avantages du C par rapport à C ++, je suis tombé sur ce paragraphe: La méthode standard en C pour effectuer l'encapsulation est de déclarer en avant une structure et de n'autoriser l'accès à ses données que par le biais de fonctions. Cette méthode crée également …
9 c 

6
Pointeur C vers la déclaration du tableau avec bit à bit et opérateur
Je veux comprendre le code suivant: //... #define _C 0x20 extern const char *_ctype_; //... __only_inline int iscntrl(int _c) { return (_c == -1 ? 0 : ((_ctype_ + 1)[(unsigned char)_c] & _C)); } Il provient du fichier ctype.h du code source du système d'exploitation obenbsd. Cette fonction vérifie si …
9 c  openbsd 

3
foo (void) vs foo (void *)
Sur le plan fonctionnel et syntaxique, y a-t-il une différence entre une fonction dont le prototype est int foo(void)et int foo(void *)? Je connais la différence entre, par exemple, int bar(int)et int bar(int *)- l'un d'eux cherche un int, et l'autre cherche un pointeur int. Se voidcomporte- t-il de la …

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.