Fråga : hur man cast stränga till char*?

Hi,
Im using tecken och mig önskade att lagra tecken värderar in i en stränga, i fall att som jag behövde den, när I-flyttningen till det nästa tecken men tinget är mig måste att behandla detta nytt stränger med en fungera som förväntar att char*, hur kunna mig cast så den som var tillbaka för att vara char*?

FILE *source;
char *token; känd
string; fgets för
(rekordet, MAX_LEN, källa);
/* för
Parse in i tecken */
tecken = strtok (rekord, ”\ t \ n \ r”);
name = tecken;
token = OGILTIG strtok (,” \ t \ n \ r "); //go till nästa token

//here jag avgjorde att jag behöver att tilldela känt till another fungerar att takechar*
add_symbol (röding*label);

how kan mig cast det känt för att vara av typröding igen, så jag kan använda tillfogad add_symbolfunction
to, mig har sett någonstans att jag kan cast stränga för att vara constchar* men im inte sure hur man gör that

appreciate din hjälp,
thanks,
" klar "

Svar : hur man cast stränga till char*?

Att konvertera en stränga till en constchar* du kan använda metoden för c_str ():
    http://www.cplusplus.com/reference/string/string/c_str/
Nedanfört är exemplet som tas från detta, anknyter.

Förmiddag I, att jag förstår helheten av ditt, ifrågasätter inte sure; och, om du önskar att utvidga på det för att visa vad du försökte att göra och hur den går orätt (genom att använda ett huvudsakligt, testa chaufförvisningen det faktiskt som tillverkas vs önskad tillverkat), det skulle är boten.
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
// stränger och c-stränger
#include  
#include  
#include  
using namespace std;

huvudsaklig int ()
{
  röding * cstr, *p;

  stränga stren (”behaga splittring som detta formulerar in i tecken”);

  cstr = ny röding [str.size () +1];
  strcpy (cstr, str.c_str ());

  // cstr innehåller nu A. c. - stränga kopierar av str

  p=strtok (cstr, ””);
  stunder (p! =NULL)
  {
    cout  <>
           
Andra lösningar  
 
programming4us programming4us