const char*轉char*怎么轉?


 

在string里面string.c_str();函數把string轉換為了const char*但是有的函數只需要char*我放const char*就不OK了.
如何把const char*轉為char*.


指向const的指針不能被賦給指向非const的指針,所以應該用strcpy,也就是另開一塊內存,把字符一個個復制過去,示例如下:   const char *expr = "goodidea";   char *buf = new char[strlen(expr)+1];   strcpy(buf, expr);   strcpy   原型:extern char *strcpy(char *dest,char *src);   用法:#include   功能:把src所指由NULL結束的字符串復制到dest所指的數組中。   說明:src和dest所指內存區域不可以重疊且dest必須有足夠的空間來容納src的字符串,返回指向dest的指針。







char * const p是一個char型指針,指針是常量,不允許修改,即類似p=q的語句是錯誤的;
char const * p和const char * p是同一種char型指針,指針指向的字符被看作是常量,不允許修改,即類似*p = q的語句是錯誤的。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM