Hocam Discord Instagram vb. kullanıyorsanız size oradan ulaşabilir miyim? Birkaç sorum olacak da bu konu amacının dışına çıktı biraz
Kullanmıyorum. Ayrıca bu konularda pek bir bilgim yok.
Evet ya da mesela "echo - -deger değer buraya" şeklinde olabilir bildiğim kadarıyla javascriptte splice fonksiyonu var ama c için bulamadım herkes kütüphane kullanıyor
[CODE lang="c" title="C kodu"]#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
#define MAX_WORD 16
#define MAX_LENGTH 32
typedef struct _Argumans
{
char **argv;
int argc;
}Argumans;
int iskey(unsigned char ch)
{
return (ch > 32 && ch != 127) ? 1 : 0;
}
char *find_double_quotes(char *str)
{
for(; *str != '\0'; str++)
{
if(*str == '\"')
{
return str;
}
}
return 0;
}
char *find_word(char *str)
{
for(; (iskey(*str) == 0); str++)
;
return str;
}
char **seperate_words(char *str, Argumans *arg)
{
static char **dizi;
char *temp, *tmp, *cift_tirnak_konumu;
int index = 0, toplam = 0, argc = 0, mindex = 0, cift_tirnak = 0;
dizi = (char **)calloc(MAX_WORD, sizeof(char*));
for(index = 0; index < MAX_WORD; index++)
{
dizi[index] = (char*)calloc(MAX_LENGTH, sizeof(char));
}
cift_tirnak = ((cift_tirnak_konumu=find_double_quotes(str)) == 0) ? 0 : 1;
for(index = 0, mindex = 0; str[index] != '\0'; mindex++)
{
temp = dizi[mindex];
str = find_word((str+index));
if(*str == '"')
{
for(index = 0; str[index+1] != '"'; index++)
{
temp[index] = str[index+1];
}
index+=2;
}
else
{
for(index = 0; (iskey(str[index]) != 0); index++)
{
temp[index] = str[index];
}
}
}
dizi[mindex] = '\0';
arg->argc = mindex;
arg->argv = dizi;
return dizi;
}
int main(void)
{
Argumans arg;
char str[50];
int index = 0;
printf("Bir metin giriniz: ");
gets(str);
seperate_words(str, &arg);
printf("Arguman sayisi: %d\n", arg.argc);
for(index = 0; arg.argv[index] != '\0'; index++)
{
printf("%d. eleman: %s\n", index+1, arg.argv[index]);
}
return 0;
}
[/CODE]
Şuna benzer bir kod var argümanlara ayırmayı sağlıyor. Kendi projene göre uyarlayabilirsin.