Another problem.
I'm new in C/C++
Someone can help and say me how to copy pointer value to variable without effect that i encountered?
Code:
#include <map.h>
#include <string>
#include <stdlib.h>
#include "amxxmodule.h"
struct Node {
char *name;
char *auth;
char *flags;
int sid;
int fid;
int red;
};
Node node;
std::map<std::string, Node> admin_map;
static cell AMX_NATIVE_CALL admin_list_addadmin(AMX *amx,cell *params)
{
int length, size;
char *name = MF_GetAmxString(amx, params[1], 0, &length);
char *auth = MF_GetAmxString(amx, params[2], 1, &length);
char *flags = MF_GetAmxString(amx, params[3], 2, &length);
MF_Log("Was %s", name);
size = strlen(name);
char *sname = new char[size+1];
strcpy(name, sname);
MF_Log("Became %s", sname);
MF_Log("");
size = strlen(auth);
char *sauth = new char[size+1];
strcpy(auth, sauth);
size = strlen(flags);
char *sflags = new char[size+1];
strcpy(flags, sflags);
node.name = sname;
node.auth = sauth;
node.flags = sflags;
node.sid = params[4];
node.fid = params[6];
node.red = 0;
admin_map[auth] = node;
return 1;
}
static cell AMX_NATIVE_CALL admin_list_isadmin(AMX *amx,cell *params)
{
std::map<std::string, Node>::iterator i;
for(i=admin_map.begin(); i!=admin_map.end(); ++i)
{
//MF_Log("Got name %s; auth: %s; flags: %s; sid: %d; fid: %d; red: %d", i->second.name, i->second.auth, i->second.flags, i->second.sid, i->second.fid, i->second.red);
//
}
//return set_amxstring(amx, params[5], f_flags, params[6]);
return 1;
}
AMX_NATIVE_INFO wtf_exports[] =
{
{ "admin_list_addadmin", admin_list_addadmin },
{ "admin_list_isadmin", admin_list_isadmin },
{ NULL, NULL }
};
void OnAmxxAttach()
{
MF_AddNatives(wtf_exports);
}
Output:
Code:
L 08/13/2011 - 14:23:55: [eAdm] Was .:MoMo_L:.>>
L 08/13/2011 - 14:23:55: [eAdm] Became
L 08/13/2011 - 14:23:55: [eAdm]
L 08/13/2011 - 14:23:55: [eAdm] Was <<ProVideR>>*no_song*[43rus]
L 08/13/2011 - 14:23:55: [eAdm] Became
L 08/13/2011 - 14:23:55: [eAdm]
L 08/13/2011 - 14:23:55: [eAdm] Was Dumba$$
L 08/13/2011 - 14:23:55: [eAdm] Became
L 08/13/2011 - 14:23:55: [eAdm]
L 08/13/2011 - 14:23:55: [eAdm] Was made by mammy^VooDoo^pro100pro
L 08/13/2011 - 14:23:55: [eAdm] Became
L 08/13/2011 - 14:23:55: [eAdm]
L 08/13/2011 - 14:23:55: [eAdm] Was blblbl4a
L 08/13/2011 - 14:23:55: [eAdm] Became
L 08/13/2011 - 14:23:55: [eAdm]
L 08/13/2011 - 14:23:55: [eAdm] Was CaHTa :D
L 08/13/2011 - 14:23:55: [eAdm] Became
L 08/13/2011 - 14:23:55: [eAdm]
L 08/13/2011 - 14:23:55: [eAdm] Was SmOKe
L 08/13/2011 - 14:23:55: [eAdm] Became
L 08/13/2011 - 14:23:55: [eAdm]
L 08/13/2011 - 14:23:55: [eAdm] Was stReet
L 08/13/2011 - 14:23:55: [eAdm] Became
L 08/13/2011 - 14:23:55: [eAdm]
__________________