Strtok FR

From SA-MP Wiki

Jump to: navigation, search
Image:32px-Ambox_warning_orange.png

Note

Cette fonction est obsolète et son usage est fortement déconseillé.
Préférez des alternatives comme sscanf, dcmd, ycmd ou autre chaque fois que c'est possible.


Usage

Description:

La fonction strtok() permet de rechercher dans une chaîne de caractères toute variable saisie après un " " (espace).
Paramètres:
(string[]}, &index)
string[]Chaîne de caractère dans laquelle on cherche
&indexPosition de départ de la recherche

Exemple d'utilisation:

public OnPlayerCommandText(playerid, cmdtext[])
{
	new cmd[128], idx;
	cmd = strtok(cmdtext, idx);
 
	if(strcmp(cmd, "/kick", true) == 0)
	{
		new tmp[128];
		tmp = strtok(cmdtext, idx);
 
		if(strlen(tmp) == 0)
                   return SendClientMessage(playerid, 0xFFFFFFFF, "USAGE: /kick [playerid]");
 
		Kick(strval(tmp));
		return 1;
	}
	return 0;
}

Fonction

La fonction strtok() n'est pas native du pawn et n'est présente dans aucune des bibliothèque de base de SA:MP.
Il s'agit d'une fonction qu'il conviens de créer avant de l'utiliser dans son script.
En voici donc la forme la plus rependue.

strtok(const string[], &index)
{
	new length = strlen(string);
	while ((index < length) && (string[index] <= ' '))
	      index++; 
 
	new offset = index;
	new result[20];
 
	while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
	{
		result[index - offset] = string[index];
		index++;
	}
 
	result[index - offset] = EOS;
	return result;
}

Related Functions

The following Functions might be useful, as they're related to this article in one way or another. Template:IsPlayerConnected FR

Personal tools
Navigation
Toolbox