我有一個字符arraym char Input [200];將字符數組轉換爲常量字符*
截至目前,輸入字符串爲「abc.txt」。
我有一個方法,嚴格需要一個const char *,我怎麼能將我的輸入數組轉換爲一個const char *。
我試着對它進行轉換並傳遞它,但是在使用GDB時,我覺得自從輸入中剩餘的192個插槽填充了垃圾(或者是空的),它不被函數接受。當我將字符串文字「a.txt」傳遞給它的函數時。所以在這一點上,我想從輸入數組中提取填充的元素,並將其轉換爲一個const char *。
我將輸入作爲用戶的文件名,因此我使用了char數組來存儲輸入。
int main()
{
char *name;
char input[1024];
strcpy(input, argv[1]);
name = input;
sys_open(input, "O_RDWR", 00700);
}
就像我在對我的回答的評論中所說的,第二個參數是'open'(或者說'sys_open'(你不應該直接調用))是**不是**字符串。 – 2013-02-09 06:23:56
const char *文件名,int標誌,int模式。這些是3個參數 – user1888502 2013-02-09 06:27:23
是的,那麼爲什麼你將第二個參數作爲字符串傳遞?帶有或不帶有它的 – 2013-02-09 06:27:43