Vous ne pouvez pas. Il n'y a pas de "valeur nulle". void
est l'absence d'une valeur. Il est vrai qu'il ressemble à vous renvoyez une "chose" ici, mais vous n'êtes pas.
En C, ceci est illégal et votre programme ne compile même pas. En C++, le code est accepté comme une "bizarrerie" de la syntaxe (ceci pour faciliter la mise en œuvre des templates). Votre ligne est effectivement la même que return;
.
ok est-il possible d'obtenir « buf » valeur de vide et je veux stocker que, dans « principale » .. est-il possible?
D'accord, question complètement différente maintenant.
buf
est un pointeur. Donc, oui, il suffit de le retourner. Vraisemblablement votre rappel est nécessaire pour renvoyer void*
par une force externe?
void* UsartCallback (uchar* buf, uint len)
{
return buf;
}
Je vous suggère de rafraîchir la syntaxe du pointeur; votre question (si je la comprends maintenant correctement, vraiment difficile à dire) trahit un manque de compréhension de la façon de travailler avec les types de pointeurs.
* void *, par définition, ne * pas * valeur de retour. Vous devriez juste l'appeler sans affectation: 'UsartCallback (& buf)'. La partie 'uchar * data' est inutile – Ian
non je peux retourner la valeur que j'ai montrée ci-dessus. – user3764118
Quel processus de réflexion a conduit à la décision d'étiqueter une question C [tag: C++] et [tag: C#], priez tell? –