Pouvons-nous définir des fonctions dans des structs en langage de programmation C ?
Réponses
Trop de publicités?
Sonu Kr Mishra
Points
23
Non, vous ne pouvez pas avoir de fonctions dans struct dans un programme C. J'ai écrit un seul code et l'ai enregistré en tant que .c et .cpp. Le fichier .cpp est conforme et fonctionne comme prévu, mais le fichier .c ne se compile même pas.
Voici le code pour votre référence. Enregistrez-le une fois en tant que .cpp, puis exécutez-le. Ensuite, enregistrez le même code que .c et compilez-le. Vous obtiendrez des erreurs de compilation.
#include <stdio.h>
struct C {
void Test(int value) {
static int var = 0;
if (var == value)
printf("var == value\n");
else
printf("var != value\n");
var = value;
}
};
int main() {
C c1;
C c2;
c1.Test(100);
c2.Test(100);
int ii;
scanf("%d",&ii);
}
Mat
Points
104488