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.

Plus à propos c...

EDIT : j'ai oublié de mentionner que je suis sur une plate-forme contrainte, j'essaie donc d'utiliser le moins de variables supplémentaires possible. ... switch (var->type) { case (something1): if (var->x >= 100 && var->x <= 105) { do_something(var); return; ....
c
18 janv. 2022 à 20:29
Je pratique le bouclage depuis peu. J'ai appris à imprimer : par exemple home à h ho hom home. en utilisant #include <stdio.h> #include <string.h> int main (){ char s[100]; printf("Input string = "); scanf("%[^\n]", s); for (int i=1; i<=strlen(s); i++){ for(int j....
18 janv. 2022 à 18:52
J'ai essayé le code ci-dessous et j'ai trouvé qu'il imprime en fait "oui", ce qui signifie que le tableau de caractères est considéré comme vrai dans l'instruction if. Mais je me demande quelle est la raison. Je veux dire que c'est un tableau, donc il a renvoyé toute la "chaîne". Ou il a renvoyé ....
c++ c
18 janv. 2022 à 15:58
Je veux vérifier si un float est égal à un autre mais seulement X nombre après le point. Pour X = 3 : 0,1234 == 0,1235 if (float1.X == float2.X) do something else do something ....
18 janv. 2022 à 13:32
Il est clair pour moi que la norme C interdit (ne définit pas le comportement de) ce programme, mais on ne sait pas pourquoi il doit en être ainsi. Pourquoi les règles d'aliasing sont-elles telles qu'on ne peut pas écrire ce programme ? #include<stdio.h> #include<string.h> #include<stdint.h> #inclu....
17 janv. 2022 à 16:57
Je suis désolé si cela semble être une question stupide, j'ai juste du mal à comprendre les bits et l'affectation des opérations au niveau du bit J'ai deux nombres entiers l'un est un masque et l'autre est arbitraire et je suis censé xor l'entier avec les 16 bits les plus significatifs du masque mai....
16 janv. 2022 à 21:38
J'essaie de renvoyer un tableau à partir du pointeur de fonction, le code fonctionne mais affiche un avertissement en C indiquant que "type de pointeur incompatible". Je veux retourner un tableau et il est déjà alloué dynamiquement. Quelqu'un peut-il me dire le problème et la solution #include <st....
16 janv. 2022 à 16:28
Je suis novice en C et C++. Je comprends que chaque fois qu'une fonction est appelée, ses variables obtiennent de la mémoire allouée sur la pile, ce qui inclut le cas où la variable se trouve être un pointeur qui pointe vers des données allouées sur le tas via malloc ou new (mais j'ai entendu dire....
16 janv. 2022 à 10:29
#include <stdio.h> #include <cs50.h> int main(void) { do { //ask for input with 1-8 int height = get_int("Height: "); } while (height > 0); } Et j'ai reçu le code d'erreur : utilisation de l'identifiant non déclaré "height" (dans l'instruction while) Je suis complèt....
16 janv. 2022 à 01:13
C a-t-il quelque chose de similaire à C++ où l'on peut placer des structures dans un tampon de caractères non signé comme cela se fait en C++ comme indiqué dans la norme sec. 6.7.2 template<typename ...T> struct AlignedUnion { alignas(T...) unsigned char data[max(sizeof(T)...)]; }; int f() { Al....
15 janv. 2022 à 19:56
J'ai une expression qui fait le même calcul. Lorsque j'essaie de faire tout le calcul dans une seule expression et de le stocker dans la variable "a", l'expression calcule la réponse comme 0. Lorsque je divise les équations en deux parties différentes, puis que je la calcule, elle donne la réponse ....
15 janv. 2022 à 08:51
Supposons que j'ai déclaré une structure C pour contenir les informations de configuration, qui contient de nombreux champs (~ 30), par exemple : struct config { int a; int b; int c; ... char *str1; char *str2; ... }; Quelle est la meilleure façon de comparer deux struct....
c
14 janv. 2022 à 20:46
J'essaie actuellement de boucler sur une collection récupérée par une API en C. L'API propose une fonction getNext() qui renvoie une référence à l'élément suivant de la collection, ou NULL si la fin est atteinte. Maintenant, je voulais déclarer une variable dans une expression while et boucler jusqu....
14 janv. 2022 à 11:38
#include<stdio.h> int main() { char arr[100], i; int n; printf("Enter the size of the Array: "); scanf("%d", &n); printf("\nEnter the Strings in the Array\n"); for(i=0; i<n; i++) { scanf("%s", &arr[i]); } for(i=0; i<n; i++) { printf("%s", a....
14 janv. 2022 à 08:44
J'ai appris que lors de l'écriture d'un programme c, nous écrivons "return 0" pour indiquer au système d'exploitation que le programme est exécuté avec succès. Ma question est de savoir comment pouvons-nous dire au système d'exploitation lors de l'écriture du programme lui-même sans même exécuter l....
c
13 janv. 2022 à 15:04
Cet identifiant est-il non problématique : _var C11, 7.1.3 Identifiants réservés, 1 Tous les identificateurs qui commencent par un trait de soulignement sont toujours réservés pour être utilisés comme identificateurs avec une portée de fichier dans les espaces de nom ordinaire et de balise. S'ensui....
12 janv. 2022 à 20:02
Quel est le meilleur comportement en C et quels sont les avantages des deux options suivantes possibles ? OPTION 1 (variable globale) : int x; for (x = 0; x < 100; x++) { // do something } OPTION 2 (variable locale) : for (int x = 0; x < 100; x++) { // do something } EDIT : Supposons que j....
for (int i = 0; i < n+1; ++i) { sum = sum + i; } for (int i = 0; i < n+1; i++) { sum = sum + i; } Deux paragraphes sont différents à cause de ++i et i++ dans l'argument d'appel de fonction. Mais cela fonctionne comme si je ne commençais que par 0. Pourquoi même ++i commence-t-il par 0 ?....
12 janv. 2022 à 16:29
Je travaille sur Embedded C. Quelqu'un pourrait-il m'aider quel morceau de code? Est-ce efficace en termes de robustesse, de mémoire ainsi que Misra friendly ? Code1: if (func() == 1 || func() == 2) { /* Body of the function */ } Code2: locvar = func(); if (locvar == 1 || locvar == 2) { ....
12 janv. 2022 à 11:02
Je fais un projet dans lequel la matrice est une terre et je dois ajouter des écopoints à l'intérieur, et j'ai du mal à mettre la fonction à l'intérieur de la main #include <stdio.h> #include <stdlib.h> Fonction pour ajouter un écopoint au terrain, x et y est pour obtenir la position, "escolha" est....
c
11 janv. 2022 à 15:27
J'ai une fonction qui alloue la matrice 2D au début et une fonction qui la désalloue, que j'utilise à la fin. int** CreatMat(int N){ int i,**T; T = (int**)malloc(sizeof(int*)*N); if(T!=NULL){ for(i=0;i<N;i++){ T[i]=(int*)malloc(sizeof(int)*N); if(T[i]==NUL....
11 janv. 2022 à 02:06
J'écris C depuis un certain temps et je suis évidemment conscient que C ne prend pas en charge les champs privés et publics explicites dans les structures. Cependant, je (crois) avoir trouvé une méthode relativement propre pour mettre cela en œuvre sans utiliser de macros ou de vaudou, et je cherch....
c
11 janv. 2022 à 01:17
Comme le titre l'indique, je souhaite que mon code répertorie le nom du mois réel au lieu de répertorier uniquement le numéro du mois. Mon code : #include <stdio.h> int main() { int day, month, year; printf("Enter day, month and year : "); scanf("%d %d %d", &day, &month, &year); if (month <....
c
10 janv. 2022 à 23:59
Pourquoi ma sortie de code est 5 et 0, pas les 6 et 5. Je pense que je devrais prendre le 6 et le 5. Je suis un nouveau. Aidez-moi s'il vous plaît. #include <stdio.h> int swap(int a,int b); int main() { int x =5; int y =6; printf("%d %d\n",x,y); int number[2]={swap(x,y)}; x=numbe....
c
10 janv. 2022 à 20:36
Ce programme est censé trouver le deuxième entier le plus grand. Je l'ai tiré d'un livre. Lorsque j'entre pour trouver le deuxième plus grand nombre parmi 4 5 1 2 3, il ne choisit pas 4 comme deuxième plus grand. Je pense qu'à la ligne 16, le code devrait être arr[0] et non arr[1]. Ai-je raison o....
c
10 janv. 2022 à 19:52