2009-09-03 10 views
1

Quel est l'équivalent C de la méthode Convert.ToInt16 (String) de C#? Dans mon cas, ma chaîne est un tableau char. MerciC# Convert.ToInt16 (Chaîne) C Équivalent

+0

En C++, vous avez plus d'options –

+0

@Ionut, en C++ vous ne savez pas quel type est de 16 bits. En C ce sera 'int'. –

+0

@Kirill: Pas vraiment. C ne nécessite pas int pour être 16bit. Il indique en fait qu'un entier non signé peut contenir toutes les valeurs comprises entre 0 et UINT_MAX inclus. UINT_MAX doit être au moins 65535. Les types int doivent contenir au moins 16 bits pour contenir la plage de valeurs requise. Alors oui, en C, vous êtes sûr qu'il y a au moins 16 bits. –

Répondre

5

Vous pouvez essayer atoi.

+0

Je sais qu'il y a quelques complications dans certains cas, mais cela suffit pour résoudre mon cas. Merci – cocoatoucher

1

Utiliser atoi ou strtol.

int n = atoi(s) 
0

vous pouvez également utiliser sscanf

sscanf("%i", myCharPointer, &myIntVar);