【发布时间】:2012-01-25 17:20:13
【问题描述】:
这个问题很简单。如何在 C 中将 char[] 转换为 char*?
我真的很难找到解决方案。因此,非常感谢您的帮助:)
这就是我需要这个的原因:
sprintf(name,"%c%c%%HACKED%c%c.virus",a,b,c,d); // print a formatted text to string (char[])
strcat(buffer,currentPath); // currentPath is of data type char[]
strcat(buffer,"\\");
strcat(buffer,name); // Now this is where the problem comes in. Since strcat function needs a const char* for it's second argument.
printf("%s",name);
【问题讨论】:
-
不行吗?我的意思是,最后一个
strcat?我会感到惊讶。name是一个真正的 char[],是吗?你没有包括它的定义。否则,printf也会失败。 -
专业提示:避免使用扩展名 .virus 命名您的病毒。
-
你知道,大脑激活失败。我只是看到“string const, 不管”,甚至没有处理内容的英文含义。也许我应该提倡使用
strcat和一些粗略的指针数学:-) ++@aardvarkk -
@aardvarkk :哈哈,其实这只是我的一个测试项目来修补语言。该程序创建了一个无限循环,它将用文件填充硬盘驱动器(具有非常大的文件大小)。所以扩展并不是那么重要。至少现在。 :D
标签: c type-conversion