Sic Parvis Magna

23 Kasım 2024 Cumartesi

C/CPP - Fonksiyonlar ve Kullanım Yöntemleri #11

Kasım 23, 2024 Posted by unexpected , , No comments

strlen

Belirlenen bir char* değerinin uzunluğunu size_t olarak döner.

Syntax
size_t strlen(const char* str);

Params

  • str: String değeri
example.cpp
#include <stdio.h>
#include <string.h>

int main(int argc, char** argv)
{
	const char* str = "This is a sample strlen";
	
	size_t len = strlen(str);
	printf("Length: %ld", len);
	
	return 0;
}

strchr

Belirlenen bir const char* değeri içinde verilen int tipindeki karakteri bulur. Başarısız ise NULL değeri döner.

Syntax
char* strchr(const char* str, int val);

Params

  • str: String değeri
  • str: Aranacak Karakter
example.cpp
#include <stdio.h>
#include <string.h>

int main(int argc, char** argv)
{
	const char* str = "strchr";
	char* pch;
	
	pch = strchr(str, 'r');
	while(pch != NULL)
	{
		printf("Found at %d\n", pch - str + 1);
		pch = strchr(pch + 1, 'r');
	}
	
	return 0;
}

strrchr

Belirlenen bir const char* değeri içinde verilen int tipindeki karakteri bulur. Başarısız ise NULL değeri döner.

Syntax
char* strrchr(const char* _Str, int _Ch);

Params

  • str: String değeri
  • str: Aranacak Karakter
example.cpp
#include <stdio.h>
#include <string.h>

int main(int argc, char** argv)
{
	const char* str = "strrchr";
	char* pch;
	
	pch = strrchr(str, 'r');
	while(pch != NULL)
	{
		printf("Found at %d\n", pch - str + 1);
		pch = strrchr(pch + 1, 'r');
	}
	
	return 0;
}

strdup

Verilen const char* değerini char* olarak geri döner. Başarısız ise NULL değerini döner.

Syntax
char* strdup(const char* src);

Params

  • str: String değeri
example.cpp
#include <stdio.h>
#include <string.h>

int main(int argc, char** argv)
{
	const char* str = "This is a sample strdup";
	
	char* pch = strdup(str);
	printf("%d", pch);
	
	return 0;
}

strcmp

Belirlenen her iki değeri biri bir ile karşılaştırır. Başarılı ise 0 değil ise -1 değeri döner.

Syntax
int strcmp(const char* _Str1, const char* _Str2);

Params

  • str1: Sabit string değeri
  • str2: Sabit string değeri
example.cpp
#include <stdio.h>
#include <string.h>

int main(int argc, char** argv)
{
	char buffer1[] = "strcmp";
	char buffer2[] = "strcmp";
	
	printf("%d", strcmp(buffer1, buffer2));
	
	return 0;
}

strncmp

Belirlenen her iki değeri biri bir ile belirlenen karakter sayısı kadar karşılaştırır. Başarılı ise 0 değil ise -1 değeri döner.

Syntax
int strncmp(const char* str1, const char* str2, size_t maxCount);

Params

  • str1: Sabit string değeri
  • str2: Sabit string değeri
  • maxCount: Karşılaştırılıcak Uzunluk
example.cpp
#include <stdio.h>
#include <string.h>

int main(int argc, char** argv)
{
	char str[][5] = {"R2D2", "C3PO", "R2A6"};
	
	for(int n = 0; n < 3; n++)
		if(!strncmp(str[n], "R2xx", 2))
			printf("Found %s\n", str[n]);
	
	return 0;
}

strncasecmp

Belirlenen her iki değeri biri bir ile belirlenen karakter sayısı kadar büyük küçük kontrolü olmaksızın karşılaştırır. Başarılı ise 0 değil ise -1 değeri döner.

Syntax
int strncasecmp(const char* str1, const char* str2, size_t maxCount);

Params

  • str1: Sabit string değeri
  • str2: Sabit string değeri
  • maxCount: Karşılaştırılıcak Uzunluk
example.cpp
#include <stdio.h>
#include <string.h>

int main(int argc, char** argv)
{
	char str[][5] = {"R2D2", "C3PO", "R2A6"};
	
	for(int n = 0; n < 3; n++)
		if(!strncasecmp(str[n], "r2xx", 2))
			printf("Found %s\n", str[n]);
	
	return 0;
}

strcpy

Belirtilen kaynak (src) değerini hedef (dst) değerine koplayalar. Başarlı ise hedef değerini döner. Başarısız ise NULL değerini döner.

Syntax
char* strcpy(char* dest, const char* source);

Params

  • dest: Hedef değeri
  • source: Kaynak değeri
example.cpp
#include <stdio.h>
#include <string.h>

struct Data
{
	char name[22];
	int age;
};

int main(int argc, char** argv)
{
	char src[] = "strcpy";
	
	char dest[50];
	strcpy(dest, src);
	printf("%s -- ", dest);
	
	Data d1;
	strcpy(d1.name, src);
	d1.age = 22;
	
	printf("Name: %s - Age: %d", d1.name, d1.age);
	
	return 0;
}

strncpy

Belirtilen kaynak (src) değerini hedef (dst) değerine koplayalar. Başarlı ise hedef değerini döner. Başarısız ise NULL değerini döner.

Syntax
char* strncpy(char* _Dest, const char* _Source, size_t _Count);

Params

  • dest: Hedef değeri
  • source: Kaynak değeri
  • count: Kaynak Boyutu
example.cpp
#include <stdio.h>
#include <string.h>

int main(int argc, char** argv)
{
	char src[] = "strncpy";
	
	char dest[50];
	strncpy(dest, src, sizeof(src));
	printf("%s", dest);
	
	return 0;
}

strcat

Kaynağın bir kopyasını alıp dest ile birleştirir. Dönüş olarak dest döndürülür.

Syntax
char* strcat(char* dest, const char* source);

Params

  • dest: Hedef değeri
  • source: Kaynak değeri
example.cpp
#include <stdio.h>
#include <string.h>

int main(int argc, char** argv)
{
	char src[] = "strcat";
	char dest[50] = "--> ";
	
	strcat(dest, src);
	printf("%s", dest);
	
	return 0;
}

strncat

Kaynağın bir kopyasını alıp dest ile birleştirir. Count olarak stringin ne kadar bölümünü birleştirsin. Dönüş olarak dest döndürülür.

Syntax
char* strncat(char* dest, const char* source, size_t count);

Params

  • dest: Hedef değeri
  • source: Kaynak değeri
  • count: Kaynağın Uzunluğu
example.cpp
#include <stdio.h>
#include <string.h>

int main(int argc, char** argv)
{
	char src[] = "strncat";
	char dest[50] = "--> ";
	
	strncat(dest, src, 2);
	printf("%s", dest);
	
	return 0;
}

0 comments:

Yorum Gönder