C Programlama printf() Fonksiyonu
İçindekiler
- int main(void){ - - printf("-1905n"); - - printf("312-+n"); - - printf("-----n"); - - printf("%d", 1905+312); - - return 0;}
yazım-kuralı :-printf("karakter-dizisi-formatı",değişkenler);yazım-kuralında-birinci-parametre-karakter-dizisi-formatı,-ikinci-parametre-değişkenler-kısmıdır.-üçüncü-parametre-ise-karakter-dizisi-formatıdır.karakter-dizisi-formatı-üç-kısımdan-meydana-gelir.
literal-string-(düz-metin)-: yazdırılmak-istenen-değerdir.
escape-squence-(kontrol-karakterleri)-: değişkenlerin-ve-sabitlerin-nasıl-yazılacağını-belirtmek-ve-imlecin-alt-satıra-geçirilmesi-gibi-bazı-basit-işlemlerin-gerçekleştirilmesi-için-kullanılır.
conversion-specifier-(biçim-niteleyici)-: %-işaretinden-oluşur-(%d-gibi).-yazdırılmak-istenen-değişkenin-tipi,-%-işaretinden-sonra-belirtilir-yani-%-işaretinin-hemen-ardına-yazılan-bir-veya-bir-kaç-karakter,-ilgili-değişken-ve-sabitin-nasıl-yazılacağının-bilgisidir.
tip-karakteri
İşlevi
tipi
%c
tek-bir-karakter
char
%d-veya -%i
işaretli-ondalık-tamsayı
int,-short
%ld
uzun-işaretli-ondalık-tamsayı
long
%u
işaretsiz-ondalık-tamsayı
unsigned-int,-unsigned-short
%f
gerçel-sayı
float,-double
%e-%e
gerçel-sayı
double
%s
karakter-dizisi-(string)
char
%lu
işaretsiz-uzun-tamsayı
unsigned-long
%x-%x
hexa-decimal-sayılar
%o
octal-sayılar
%-işareti-:-bir-ifadenin-biçim-niteleyici-olmabilmesi-için-%-ile-başlaması-zorunludur.Örnek
#include-"stdio.h"main(){ printf("%s-web-sayfasi-hazirlarken-%d-kitaptan-ve-%d-ornek-taslaktan-yararlandim.", "html-ile", 2, 3); return(0);}
Örnekte-printf()-fonksiyonu-için-3-argüman-tanımlanmıştır.-printf()-fonksiyonu-("")-işaretleri-içindeki-karakter-dizisini-taramaya-başlar.-İlk-%s-tip-karakteri-ile-karşılaştığında-buraya-bir-karakter-dizisinin-geleceğini-anlar-ve-karakter-dizisinden-sonraki-ilk-argüman-değerini-okuyarak-(html-ile)-ekrana-yazar.-sonra-ikinci-tip-karakteri-karakter-dizisi-içindeki-normal-karakterleri-ekrana-yazar-(web-sayfası-hazırlarken).-%d-tip-karakteri-ise-bir-int-sabitinin-geleceğini-anlar-ve-karakter-dizisinden-sonraki-ikinci-değeri-okuyarak-(2)-ekrana-yazar.-karakter-dizisinde-yer-alan-bölümü-(-kitaptan-ve-)-ekrana-yazar.-bir-sonraki-%d-yine-bir-int-sabitinin-geleceğini-anlar-ve-karakter-dizisinden-sonraki-üçüncü-değeri-okuyarak-(3)-ekrana-yazar.-ve-son-olarak-karakter-dizisinin-geriye-kalan-kısmı-ekrana-yazılır-(-ornek-taslaktan-yararlandım)-printf()-fonksiyonunda-kullanılan-tip-karakterleri-yerine-sadece-sabit-değerler-değil-aynı-zamanda-değişkenlerin-değerleri-de-konabilir.Örnek
#include-"stdio.h"main(){ int x1; char x2; -x1 = 32; -x2 = 't'; printf("%d-ve-%c", x1, x2); return(0);}
Örnek-x1-adlı-int-ve-x2-adlı-char-değişkenlerine-atananı-32-ve-t-sabit-değerlerini-printf()-fonksiyonu-ile-ekrana-yazmaktadır.
#include-
#include- int main(void){ - - /////////karakter/////////////// - char karakter1='a'; - char karakter2=34; - - //////////////tam-sayilar////////////// - - - //int-sayi1=32.768;-küsüratlı-sayı-kullanılamaz - - - int sayi1=32768; //%d - - unsigned int sayi2=666666666; //%u - - short int sayi3=2138; //%d - - unsigned short int sayi4=13010; //%u - - long int sayi5=2305198322512599414; //%ld - - unsigned long int sayi6=-23051983225125994; //%lu - - ////////////ondalıklı-sayılar - - float sayi7=35.12345678849445674; //%f - - double sayi8=6629387.5034986790485769305876093485760985760943857609438760934876; //%f - - - const float pi=3.14; - - #define-resimbuyuklugu-640;-//sabit-deger-atamalarinda-kullanilir-ve-programin-basinda-yer-alir - //resimbuyuklugu=849;- define-ile-daha-önce-tanimlandigi-icin-degistirilemez - printf("char-tipleri-karakter1=%c-karakter1=%d-karakter2=%c-karakter2=%d n", karakter1, karakter1, karakter2, karakter2); - - printf("---------int-tipleri--------- n"); - printf("sayi1=%d n", sayi1); - printf("sayi2=%u n", sayi2); - printf("sayi3=%d n", sayi3); - printf("sayi5=%ld n", sayi5); - - - - printf("%x n", 0x09); //hex-sayının-decımal-karsılıgını-yazar - - puts("dede"); //string-yazar - - //printf("%x-n",-5); - - return 0;} int a = 0x0a;printf("%d",a); /*-outputs-10-(decimal)-*/printf("0x%x",a); /*-outputs-0xa-*/ - void test() { - int num = 15; - printf("%d t", num); /*-prints-15-*/ - printf("0x%x t", num); /*-prints-0xf-*/ - printf("0%o n", num); /*-prints-017-(octal)-*/ - -num = 0xf; - printf("%d t", num); /*-prints-15-*/ - printf("0x%x t", num); /*-prints-0xf-*/ - printf("0%o n", num); /*-prints-017-(octal)-*/ - -num = 017; - printf("%d t", num); /*-prints-15-*/ - printf("0x%x t", num); /*-prints-0xf-*/ - printf("0%o-", num); /*-prints-017-(octal)-*/ - } - #include int main(){ long int decimalnumber; printf("enter-any-decimal-number:-"); scanf("%d",&decimalnumber); printf("equivalent-hexadecimal-number-is:-%x",decimalnumber); return 0;} İleri-printf escape-code use x1b[2j clears-the-console x1bn;mh-or-x1bn;mf moves-the-cursor-to-row-n,-column-m.-the-values-are-1-based,-and-default-to-1-(top-left-corner)-if-omitted x1b?25l hides-the-cursor-(note:-the-last-character-is-lowercase-‘l’) x1b?25h shows-the-cursor. x1b[;km where-k-is-the-colour-(text-colours-are-from-30-to-37-and-background-colours-are-from-40-to-47).-for-the-colour-codes,-see-table-2. x1b[5m blinks-slowly x1b[6m Örnek int main(){ - printf("x1b[34m"); //-blue-background - printf("x1b[2j"); //-clear-the-screen-with-blue-bg - printf("x1b[47m"); //-white-foreground - printf("hello,-world!n"); - printf("x1b[0m"); //-reset-the-console - return 0;} eğer-string-işlemleri-hakkında-daha-fazla-bilgi-isterseniz burayı tıklayabilirsiniz. ">C Programlama printf() Fonksiyonu Standart C kütüphanesinin bir parçası olan printf() C Programlama Dili'nin genel amaçlı çıktı alma fonksiyonudur. Girdi ve çıktı deyimleri gerçekte C dilinin bir parçası değildir. Yani, diğer programlama dillerinin tersine, C dilinin içine konmuş girdi/çıktı deyimleri yoktur. Girdi/çıktı işlemleri, her zaman, fonksiyonlar çağrılarak yapılır. Tabii ki, girdi/çıktı yapmak için kullanılan fonksiyonların programcı tarafından yazılmasına gerek yoktur. Hemen hemen bütün C ortamlarında girdi/çıktı fonksiyonları içeren standart kütüphaneler bulunmaktadır. Bu kütüphanelerde tanımlanmış bulunan fonksiyonlar (ile alabilecekleri argümanlar) ve ilgilibirtakım değişkenlerin bildirisi ise bir başlık dosyasına konur. stdio.h böyle bir başlık dosyasıdır ve herhangi bir standart girdi/çıktı fonksiyonu çağrılmadan veya değişkenleri kullanılmadan önce #include yazılarak kaynak programın içine kopyalanması gerekir. Kullanıcının girdi/çıktı yapması için, üç girdi/çıktı ara dosyasının tanımı önceden yapılmıştır. Bunlar şunlardır: stdin standart girdi stdout standart çıktı stderr standart hata çıktısı ve normal olarak kullanıcının klavye ve ekranına bağlanmıştır. printf() Fonksiyonu Ekrana istediğimiz verileri yazmak içim kullanılan bir fonksiyondur. printf() fonksiyonu karakter dizisinden oluşan tek bir değeri veya farklı değişken ve sabitlerden oluşan birden fazla değeri ekrana yazdırmak için kullanılabilir. printf() fonksiyonunu kullanırken yazdırmak istediğimiz değeri daha düzgün göstermek maksatlı bazı yardımcı komutlar (Kontrol karakterleri) vardır. n yeni satıra geç b geri alma r satırbaşı t 1 (tab) ileri hareket f sayfa ilerletme v dikey durak a beep sesi çıkart ' tek tırnak " çift tırnak ? soru işareti ters slash ddd sekizli kodu ddd (1, 2 veya 3 adet sekizli rakam) xhh onaltılı kodu hh (herhangi bir sayıda onaltılı rakam) Örnek #include "stdio.h"main(){ printf("C Programla Dili"); return 0;} Örnek #include int main(void){ printf(" 1905n"); printf("312 +n"); printf("-----n"); printf("%d", 1905+312); return 0;} Yazım Kuralı : printf("karakter dizisi formatı",değişkenler);Yazım kuralında birinci parametre karakter dizisi formatı, ikinci parametre değişkenler kısmıdır. üçüncü parametre ise karakter dizisi formatıdır.Karakter dizisi formatı üç kısımdan meydana gelir. Literal String (Düz Metin) : Yazdırılmak istenen değerdir. Escape Squence (Kontrol Karakterleri) : Değişkenlerin ve sabitlerin nasıl yazılacağını belirtmek ve imlecin alt satıra geçirilmesi gibi bazı basit işlemlerin gerçekleştirilmesi için kullanılır. Conversion Specifier (Biçim Niteleyici) : % işaretinden oluşur (%d gibi). Yazdırılmak istenen değişkenin tipi, % işaretinden sonra belirtilir Yani % işaretinin hemen ardına yazılan bir veya bir kaç karakter, ilgili değişken ve sabitin nasıl yazılacağının bilgisidir. Tip Karakteri İşlevi Tipi %c tek bir karakter char %d veya %i işaretli ondalık tamsayı int, short %ld uzun işaretli ondalık tamsayı long %u işaretsiz ondalık tamsayı unsigned int, unsigned short %f Gerçel Sayı float, double %e %E Gerçel Sayı double %s karakter dizisi (string) char %lu işaretsiz uzun tamsayı unsigned long %x %X Hexa decimal sayılar %o Octal sayılar % işareti : Bir ifadenin biçim niteleyici olmabilmesi için % ile başlaması zorunludur.Örnek #include "stdio.h"main(){ printf("%s web sayfasi hazirlarken %d kitaptan ve %d ornek taslaktan yararlandim.", "HTML ile", 2, 3); return(0);} Örnekte printf() fonksiyonu için 3 argüman tanımlanmıştır. printf() fonksiyonu ("") işaretleri içindeki karakter dizisini taramaya başlar. İlk %s tip karakteri ile karşılaştığında buraya bir karakter dizisinin geleceğini anlar ve karakter dizisinden sonraki ilk argüman değerini okuyarak (HTML ile) ekrana yazar. Sonra ikinci tip karakteri karakter dizisi içindeki normal karakterleri ekrana yazar (web sayfası hazırlarken). %d tip karakteri ise bir int sabitinin geleceğini anlar ve karakter dizisinden sonraki ikinci değeri okuyarak (2) ekrana yazar. Karakter dizisinde yer alan bölümü ( kitaptan ve ) ekrana yazar. Bir sonraki %d yine bir int sabitinin geleceğini anlar ve karakter dizisinden sonraki üçüncü değeri okuyarak (3) ekrana yazar. Ve son olarak karakter dizisinin geriye kalan kısmı ekrana yazılır ( ornek taslaktan yararlandım) printf() fonksiyonunda kullanılan tip karakterleri yerine sadece sabit değerler değil aynı zamanda değişkenlerin değerleri de konabilir.Örnek #include "stdio.h"main(){ int x1; char x2; x1 = 32; x2 = 'T'; printf("%d ve %c", x1, x2); return(0);} Örnek x1 adlı int ve x2 adlı char değişkenlerine atananı 32 ve T sabit değerlerini printf() fonksiyonu ile ekrana yazmaktadır. #include #include int main(void){ /////////karakter/////////////// char karakter1='A'; char karakter2=34; //////////////tam sayilar////////////// //int sayi1=32.768; küsüratlı sayı kullanılamaz int sayi1=32768; //%d unsigned int sayi2=666666666; //%u short int sayi3=2138; //%d unsigned short int sayi4=13010; //%u long int sayi5=2305198322512599414; //%ld unsigned long int sayi6=-23051983225125994; //%lu ////////////ondalıklı sayılar float sayi7=35.12345678849445674; //%f double sayi8=6629387.5034986790485769305876093485760985760943857609438760934876; //%f const float pi=3.14; #define ResimBuyuklugu 640; //sabit deger atamalarinda kullanilir ve programin basinda yer alir //ResimBuyuklugu=849; define ile daha önce tanimlandigi icin degistirilemez printf("char tipleri karakter1=%c karakter1=%d karakter2=%c karakter2=%d n", karakter1, karakter1, karakter2, karakter2); printf("---------int tipleri--------- n"); printf("sayi1=%d n", sayi1); printf("sayi2=%u n", sayi2); printf("sayi3=%d n", sayi3); printf("sayi5=%ld n", sayi5); printf("%x n", 0x09); //hex sayının decımal karsılıgını yazar puts("dede"); //string yazar //printf("%X n", 5); return 0;} int a = 0x0a;printf("%d",a); /* outputs 10 (decimal) */printf("0x%x",a); /* outputs 0xa */ void test() { int num = 15; printf("%d t", num); /* prints 15 */ printf("0x%x t", num); /* prints 0xf */ printf("0%o n", num); /* prints 017 (octal) */ num = 0xf; printf("%d t", num); /* prints 15 */ printf("0x%x t", num); /* prints 0xf */ printf("0%o n", num); /* prints 017 (octal) */ num = 017; printf("%d t", num); /* prints 15 */ printf("0x%x t", num); /* prints 0xf */ printf("0%o ", num); /* prints 017 (octal) */ } #include int main(){ long int decimalNumber; printf("Enter any decimal number: "); scanf("%d",&decimalNumber); printf("Equivalent hexadecimal number is: %X",decimalNumber); return 0;} İleri Printf Escape code Use x1b[2J Clears the console x1bn;mH or x1bn;mf Moves the cursor to row n, column m. The values are 1-based, and default to 1 (top left corner) if omitted x1b?25l Hides the cursor (Note: the last character is lowercase ‘L’) x1b?25h Shows the cursor. x1b[;km Where k is the colour (text colours are from 30 to 37 and background colours are from 40 to 47). For the colour codes, see Table 2. x1b[5m Blinks slowly x1b[6m Örnek int main(){ printf("x1b[34m"); // Blue background printf("x1b[2J"); // Clear the screen with blue bg printf("x1b[47m"); // White foreground printf("Hello, World!n"); printf("x1b[0m"); // Reset the console return 0;} Eğer string işlemleri hakkında daha fazla bilgi isterseniz burayı tıklayabilirsiniz. - Standart C kütüphanesinin bir parçası olan printf() C Programlama Dili'nin genel amaçlı çıktı alma fonksiyonudur.
C Programlama printf() Fonksiyonu
Standart C kütüphanesinin bir parçası olan printf() C Programlama Dili'nin genel amaçlı çıktı alma fonksiyonudur.
Girdi ve çıktı deyimleri gerçekte C dilinin bir parçası değildir. Yani, diğer programlama dillerinin tersine, C dilinin içine konmuş girdi/çıktı deyimleri yoktur. Girdi/çıktı işlemleri, her zaman, fonksiyonlar çağrılarak yapılır. Tabii ki, girdi/çıktı yapmak için kullanılan fonksiyonların programcı tarafından yazılmasına gerek yoktur. Hemen hemen bütün C ortamlarında girdi/çıktı fonksiyonları içeren standart kütüphaneler bulunmaktadır. Bu kütüphanelerde tanımlanmış bulunan fonksiyonlar (ile alabilecekleri argümanlar) ve ilgili
birtakım değişkenlerin bildirisi ise bir başlık dosyasına konur. stdio.h böyle bir başlık dosyasıdır ve herhangi bir standart girdi/çıktı fonksiyonu çağrılmadan veya değişkenleri kullanılmadan önce
#include <stdio.h>
yazılarak kaynak programın içine kopyalanması gerekir.
Kullanıcının girdi/çıktı yapması için, üç girdi/çıktı ara dosyasının tanımı önceden yapılmıştır. Bunlar şunlardır:
stdin
standart girdi
stdout
standart çıktı
stderr
standart hata çıktısı
ve normal olarak kullanıcının klavye ve ekranına bağlanmıştır.
printf() Fonksiyonu Ekrana istediğimiz verileri yazmak içim kullanılan bir fonksiyondur. printf() fonksiyonu karakter dizisinden oluşan tek bir değeri veya farklı değişken ve sabitlerden oluşan birden fazla değeri ekrana yazdırmak için kullanılabilir.
printf() fonksiyonunu kullanırken yazdırmak istediğimiz değeri daha düzgün göstermek maksatlı bazı yardımcı komutlar (Kontrol karakterleri) vardır.
n
yeni satıra geç
b
geri alma
r
satırbaşı
t
1 (tab) ileri hareket
f
sayfa ilerletme
v
dikey durak
a
beep sesi çıkart
'
tek tırnak
"
çift tırnak
?
soru işareti
ters slash
ddd
sekizli kodu ddd (1, 2 veya 3 adet sekizli rakam)
xhh
onaltılı kodu hh (herhangi bir sayıda onaltılı rakam)
Örnek
#include "stdio.h"
main(){
printf("C Programla Dili");
return 0;
}
Örnek
#include <stdio.h>
int main(void){
printf(" 1905n");
printf("312 +n");
printf("-----n");
printf("%d", 1905+312);
return 0;
}
Yazım Kuralı : printf("karakter dizisi formatı",değişkenler);
Yazım kuralında birinci parametre karakter dizisi formatı, ikinci parametre değişkenler kısmıdır. üçüncü parametre ise karakter dizisi formatıdır.Karakter dizisi formatı üç kısımdan meydana gelir.
- Literal String (Düz Metin) : Yazdırılmak istenen değerdir.
- Escape Squence (Kontrol Karakterleri) : Değişkenlerin ve sabitlerin nasıl yazılacağını belirtmek ve imlecin alt satıra geçirilmesi gibi bazı basit işlemlerin gerçekleştirilmesi için kullanılır.
- Conversion Specifier (Biçim Niteleyici) : % işaretinden oluşur (%d gibi). Yazdırılmak istenen değişkenin tipi, % işaretinden sonra belirtilir Yani % işaretinin hemen ardına yazılan bir veya bir kaç karakter, ilgili değişken ve sabitin nasıl yazılacağının bilgisidir.
Tip Karakteri
İşlevi
Tipi
%c
tek bir karakter
char
%d veya %i
işaretli ondalık tamsayı
int, short
%ld
uzun işaretli ondalık tamsayı
long
%u
işaretsiz ondalık tamsayı
unsigned int, unsigned short
%f
Gerçel Sayı
float, double
%e %E
Gerçel Sayı
double
%s
karakter dizisi (string)
char
%lu
işaretsiz uzun tamsayı
unsigned long
%x %X
Hexa decimal sayılar
%o
Octal sayılar
% işareti : Bir ifadenin biçim niteleyici olmabilmesi için % ile başlaması zorunludur.
Örnek
#include "stdio.h"
main(){
printf("%s web sayfasi hazirlarken %d kitaptan ve %d ornek taslaktan yararlandim.", "HTML ile", 2, 3);
return(0);
}
Örnekte printf() fonksiyonu için 3 argüman tanımlanmıştır. printf() fonksiyonu ("") işaretleri içindeki karakter dizisini taramaya başlar. İlk %s tip karakteri ile karşılaştığında buraya bir karakter dizisinin geleceğini anlar ve karakter dizisinden sonraki ilk argüman değerini okuyarak (HTML ile) ekrana yazar. Sonra ikinci tip karakteri karakter dizisi içindeki normal karakterleri ekrana yazar (web sayfası hazırlarken). %d tip karakteri ise bir int sabitinin geleceğini anlar ve karakter dizisinden sonraki ikinci değeri okuyarak (2) ekrana yazar. Karakter dizisinde yer alan bölümü ( kitaptan ve ) ekrana yazar. Bir sonraki %d yine bir int sabitinin geleceğini anlar ve karakter dizisinden sonraki üçüncü değeri okuyarak (3) ekrana yazar. Ve son olarak karakter dizisinin geriye kalan kısmı ekrana yazılır ( ornek taslaktan yararlandım) printf() fonksiyonunda kullanılan tip karakterleri yerine sadece sabit değerler değil aynı zamanda değişkenlerin değerleri de konabilir.
Örnek
#include "stdio.h"
main(){
int x1;
char x2;
x1 = 32;
x2 = 'T';
printf("%d ve %c", x1, x2);
return(0);
}
Örnek x1 adlı int ve x2 adlı char değişkenlerine atananı 32 ve T sabit değerlerini printf() fonksiyonu ile ekrana yazmaktadır.
#include <stdio.h>
#include <stdlib.h>
int main(void){
/////////karakter///////////////
char karakter1='A';
char karakter2=34;
//////////////tam sayilar//////////////
//int sayi1=32.768; küsüratlı sayı kullanılamaz
int sayi1=32768; //%d
unsigned int sayi2=666666666; //%u
short int sayi3=2138; //%d
unsigned short int sayi4=13010; //%u
long int sayi5=2305198322512599414; //%ld
unsigned long int sayi6=-23051983225125994; //%lu
////////////ondalıklı sayılar
float sayi7=35.12345678849445674; //%f
double sayi8=6629387.5034986790485769305876093485760985760943857609438760934876; //%f
const float pi=3.14;
#define ResimBuyuklugu 640; //sabit deger atamalarinda kullanilir ve programin basinda yer alir
//ResimBuyuklugu=849; define ile daha önce tanimlandigi icin degistirilemez
printf("char tipleri karakter1=%c karakter1=%d karakter2=%c karakter2=%d n", karakter1, karakter1, karakter2, karakter2);
printf("---------int tipleri--------- n");
printf("sayi1=%d n", sayi1);
printf("sayi2=%u n", sayi2);
printf("sayi3=%d n", sayi3);
printf("sayi5=%ld n", sayi5);
printf("%x n", 0x09); //hex sayının decımal karsılıgını yazar
puts("dede"); //string yazar
//printf("%X n", 5);
return 0;
}
int a = 0x0a;
printf("%d",a); /* outputs 10 (decimal) */
printf("0x%x",a); /* outputs 0xa */
void test() {
int num = 15;
printf("%d t", num); /* prints 15 */
printf("0x%x t", num); /* prints 0xf */
printf("0%o n", num); /* prints 017 (octal) */
num = 0xf;
printf("%d t", num); /* prints 15 */
printf("0x%x t", num); /* prints 0xf */
printf("0%o n", num); /* prints 017 (octal) */
num = 017;
printf("%d t", num); /* prints 15 */
printf("0x%x t", num); /* prints 0xf */
printf("0%o ", num); /* prints 017 (octal) */
}
#include<stdio.h>
int main(){
long int decimalNumber;
printf("Enter any decimal number: ");
scanf("%d",&decimalNumber);
printf("Equivalent hexadecimal number is: %X",decimalNumber);
return 0;
}
İleri Printf
Escape code
Use
x1b[2J
Clears the console
x1bn;mH or x1bn;mf
Moves the cursor to row n, column m. The values are 1-based, and default to 1 (top left corner) if omitted
x1b?25l
Hides the cursor (Note: the last character is lowercase ‘L’)
x1b?25h
Shows the cursor.
x1b[;km
Where k is the colour (text colours are from 30 to 37 and background colours are from 40 to 47). For the colour codes, see Table 2.
x1b[5m
Blinks slowly
x1b[6m
Örnek
int main(){
printf("x1b[34m"); // Blue background
printf("x1b[2J"); // Clear the screen with blue bg
printf("x1b[47m"); // White foreground
printf("Hello, World!n");
printf("x1b[0m"); // Reset the console
return 0;
}
Eğer string işlemleri hakkında daha fazla bilgi isterseniz burayı tıklayabilirsiniz.
Standart C kütüphanesinin bir parçası olan printf() C Programlama Dili'nin genel amaçlı çıktı alma fonksiyonudur.
Girdi ve çıktı deyimleri gerçekte C dilinin bir parçası değildir. Yani, diğer programlama dillerinin tersine, C dilinin içine konmuş girdi/çıktı deyimleri yoktur. Girdi/çıktı işlemleri, her zaman, fonksiyonlar çağrılarak yapılır. Tabii ki, girdi/çıktı yapmak için kullanılan fonksiyonların programcı tarafından yazılmasına gerek yoktur. Hemen hemen bütün C ortamlarında girdi/çıktı fonksiyonları içeren standart kütüphaneler bulunmaktadır. Bu kütüphanelerde tanımlanmış bulunan fonksiyonlar (ile alabilecekleri argümanlar) ve ilgili
birtakım değişkenlerin bildirisi ise bir başlık dosyasına konur. stdio.h böyle bir başlık dosyasıdır ve herhangi bir standart girdi/çıktı fonksiyonu çağrılmadan veya değişkenleri kullanılmadan önce
yazılarak kaynak programın içine kopyalanması gerekir.
Kullanıcının girdi/çıktı yapması için, üç girdi/çıktı ara dosyasının tanımı önceden yapılmıştır. Bunlar şunlardır:
stdin | standart girdi |
stdout | standart çıktı |
stderr | standart hata çıktısı |
ve normal olarak kullanıcının klavye ve ekranına bağlanmıştır.
n
|
yeni satıra geç
|
b
|
geri alma
|
r
|
satırbaşı
|
t
|
1 (tab) ileri hareket
|
f
|
sayfa ilerletme
|
v
|
dikey durak
|
a
|
beep sesi çıkart |
'
|
tek tırnak
|
"
|
çift tırnak
|
?
|
soru işareti
|
|
ters slash
|
ddd
|
sekizli kodu ddd (1, 2 veya 3 adet sekizli rakam)
|
xhh
|
onaltılı kodu hh (herhangi bir sayıda onaltılı rakam)
|
Örnek
main(){
printf("C Programla Dili");
return 0;
}
Örnek
int main(void){
printf(" 1905n");
printf("312 +n");
printf("-----n");
printf("%d", 1905+312);
return 0;
}
Yazım Kuralı : printf("karakter dizisi formatı",değişkenler);
Yazım kuralında birinci parametre karakter dizisi formatı, ikinci parametre değişkenler kısmıdır. üçüncü parametre ise karakter dizisi formatıdır.Karakter dizisi formatı üç kısımdan meydana gelir.
- Literal String (Düz Metin) : Yazdırılmak istenen değerdir.
- Escape Squence (Kontrol Karakterleri) : Değişkenlerin ve sabitlerin nasıl yazılacağını belirtmek ve imlecin alt satıra geçirilmesi gibi bazı basit işlemlerin gerçekleştirilmesi için kullanılır.
- Conversion Specifier (Biçim Niteleyici) : % işaretinden oluşur (%d gibi). Yazdırılmak istenen değişkenin tipi, % işaretinden sonra belirtilir Yani % işaretinin hemen ardına yazılan bir veya bir kaç karakter, ilgili değişken ve sabitin nasıl yazılacağının bilgisidir.
Tip Karakteri
|
İşlevi
|
Tipi
|
%c
|
tek bir karakter
|
char
|
%d veya %i
|
işaretli ondalık tamsayı
|
int, short
|
%ld
|
uzun işaretli ondalık tamsayı
|
long
|
%u
|
işaretsiz ondalık tamsayı
|
unsigned int, unsigned short
|
%f
|
Gerçel Sayı
|
float, double
|
%e %E | Gerçel Sayı | double |
%s
|
karakter dizisi (string)
|
char
|
%lu
|
işaretsiz uzun tamsayı
|
unsigned long
|
%x %X | Hexa decimal sayılar | |
%o | Octal sayılar | |
% işareti : Bir ifadenin biçim niteleyici olmabilmesi için % ile başlaması zorunludur.
Örnek
main(){
printf("%s web sayfasi hazirlarken %d kitaptan ve %d ornek taslaktan yararlandim.", "HTML ile", 2, 3);
return(0);
}
Örnek
main(){
int x1;
char x2;
x1 = 32;
x2 = 'T';
printf("%d ve %c", x1, x2);
return(0);
}
Örnek x1 adlı int ve x2 adlı char değişkenlerine atananı 32 ve T sabit değerlerini printf() fonksiyonu ile ekrana yazmaktadır.
#include <stdlib.h>
int main(void){
/////////karakter///////////////
char karakter1='A';
char karakter2=34;
//////////////tam sayilar//////////////
//int sayi1=32.768; küsüratlı sayı kullanılamaz
int sayi1=32768; //%d
unsigned int sayi2=666666666; //%u
short int sayi3=2138; //%d
unsigned short int sayi4=13010; //%u
long int sayi5=2305198322512599414; //%ld
unsigned long int sayi6=-23051983225125994; //%lu
////////////ondalıklı sayılar
float sayi7=35.12345678849445674; //%f
double sayi8=6629387.5034986790485769305876093485760985760943857609438760934876; //%f
const float pi=3.14;
#define ResimBuyuklugu 640; //sabit deger atamalarinda kullanilir ve programin basinda yer alir
//ResimBuyuklugu=849; define ile daha önce tanimlandigi icin degistirilemez
printf("char tipleri karakter1=%c karakter1=%d karakter2=%c karakter2=%d n", karakter1, karakter1, karakter2, karakter2);
printf("---------int tipleri--------- n");
printf("sayi1=%d n", sayi1);
printf("sayi2=%u n", sayi2);
printf("sayi3=%d n", sayi3);
printf("sayi5=%ld n", sayi5);
printf("%x n", 0x09); //hex sayının decımal karsılıgını yazar
puts("dede"); //string yazar
//printf("%X n", 5);
return 0;
}
printf("%d",a); /* outputs 10 (decimal) */
printf("0x%x",a); /* outputs 0xa */
int num = 15;
printf("%d t", num); /* prints 15 */
printf("0x%x t", num); /* prints 0xf */
printf("0%o n", num); /* prints 017 (octal) */
num = 0xf;
printf("%d t", num); /* prints 15 */
printf("0x%x t", num); /* prints 0xf */
printf("0%o n", num); /* prints 017 (octal) */
num = 017;
printf("%d t", num); /* prints 15 */
printf("0x%x t", num); /* prints 0xf */
printf("0%o ", num); /* prints 017 (octal) */
}
int main(){
long int decimalNumber;
printf("Enter any decimal number: ");
scanf("%d",&decimalNumber);
printf("Equivalent hexadecimal number is: %X",decimalNumber);
return 0;
}
İleri Printf
Escape code | Use |
x1b[2J | Clears the console |
x1bn;mH or x1bn;mf | Moves the cursor to row n, column m. The values are 1-based, and default to 1 (top left corner) if omitted |
x1b?25l | Hides the cursor (Note: the last character is lowercase ‘L’) |
x1b?25h | Shows the cursor. |
x1b[;km | Where k is the colour (text colours are from 30 to 37 and background colours are from 40 to 47). For the colour codes, see Table 2. |
x1b[5m | Blinks slowly |
x1b[6m |
Örnek
printf("x1b[34m"); // Blue background
printf("x1b[2J"); // Clear the screen with blue bg
printf("x1b[47m"); // White foreground
printf("Hello, World!n");
printf("x1b[0m"); // Reset the console
return 0;
}
Eğer string işlemleri hakkında daha fazla bilgi isterseniz burayı tıklayabilirsiniz.