Je m'embrouille avec size_ten C. Je sais qu'il est retourné par l' sizeofopérateur. mais qu'est ce que c'est exactement? S'agit-il d'un type de données? Disons que j'ai une forboucle: for(i = 0; i < some_size; i++) Dois-je utiliser int i;ou size_t
Je m'embrouille avec size_ten C. Je sais qu'il est retourné par l' sizeofopérateur. mais qu'est ce que c'est exactement? S'agit-il d'un type de données? Disons que j'ai une forboucle: for(i = 0; i < some_size; i++) Dois-je utiliser int i;ou size_t
Je remarque que le code C et C ++ moderne semble utiliser à la size_tplace de int/ à unsigned intpeu près partout - des paramètres des fonctions de chaîne C à la STL. Je suis curieux de connaître la raison de cela et les avantages qu'il
La norme C garantit qu'il size_ts'agit d'un type pouvant contenir n'importe quel index de tableau. Cela signifie que, logiquement, size_tdevrait pouvoir contenir n'importe quel type de pointeur. J'ai lu sur certains sites que j'ai trouvés sur Google que cela est légal et / ou devrait toujours...
Je me demande simplement si je devrais utiliser std::size_tdes boucles et d'autres choses au lieu de int? Par exemple: #include <cstdint> int main() { for (std::size_t i = 0; i < 10; ++i) { // std::size_t OK here? Or should I use, say, unsigned int instead? } } En général, quelle est la...
Quelles sont les différences entre size_tet std::size_ten termes où ils sont déclarés, quand ils devraient être utilisés et d'autres caractéristiques de
J'ai du code C ++ qui imprime un size_t: size_t a; printf("%lu", a); J'aimerais que cela compile sans avertissements sur les architectures 32 et 64 bits. Si c'était C99, je pourrais utiliser printf("%z", a);. Mais AFAICT %zn'existe dans aucun dialecte C ++ standard. Alors à la place, je dois faire...
Je veux imprimer une variable de type size_ten C mais il semble qu'elle size_tsoit aliasée avec différents types de variables sur différentes architectures. Par exemple, sur une machine (64 bits), le code suivant ne renvoie aucun avertissement: size_t size = 1; printf("the size is %ld", size);...