SORU
10 EKİM 2008, Cuma


Nerede Linux itoa işlevi nedir?

itoa() bir dize bir sayı dönüştürmek için çok kullanışlı bir işlevdir. Linux itoa(), eşdeğer bir işlevi vardır görünmüyor veya sprintf(str, "%d", num) kullanmak zorunda mıyım?

CEVAP
10 EKİM 2008, Cuma


DÜZENLEME: Üzgünüm, bu makine kesinlikle standart dışı olduğunu, akademik amaçlı olmayan standart libc çeşitli uygulamalar takılı olması hatırlamam gerekirdi ;-)

itoa() gerçekten standart dışı bahsedildiği gibi birçok yararlı yorumların, bunu en iyi şekilde kullanmak sprintf(target_string,"%d",source_int) veya daha iyisi, çünkü güvenli tampon taşmaları) snprintf(target_string, size_of_target_string_in_bytes, "%d", source_int). itoa(), ama en azından bir Kere Yaz gibi özlü veya soğuk olarak oldukça değil biliyorum, her Yerde (tm) Çalıştırın ;-)

İşte (düzenlenmiş) eski cevap

11 ** varsayılan birkaç diğer platformlar gibi itoa(), nedeniyle içermez belirten teknik olarak standart bir parçası olmakta haklısınız. Biraz daha bilgi için here bkz. Olması, unutmayın

#include <stdlib.h>

Tabii ki sen istediğin için zaten bukullanınitoa() muhtemelen başka bir platformda kullandıktan sonra Linux ama... kod (yukarıdaki linkten çalıntı) gibi görünecektir:

Örnek

/* itoa example */
#include <stdio.h>
#include <stdlib.h>

int main ()
{
  int i;
  char buffer [33];
  printf ("Enter a number: ");
  scanf ("%d",&i);
  itoa (i,buffer,10);
  printf ("decimal: %s\n",buffer);
  itoa (i,buffer,16);
  printf ("hexadecimal: %s\n",buffer);
  itoa (i,buffer,2);
  printf ("binary: %s\n",buffer);
  return 0;
}

Çıkış:

Enter a number: 1750
decimal: 1750
hexadecimal: 6d6
binary: 11011010110

Bu yardımcı olur umarım!

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • campos9896

    campos9896

    24 Mart 2012
  • TSE

    TSE

    12 Kasım 2012
  • TVNorge

    TVNorge

    5 EKİM 2006