我正在尝试编写自己的操作系统。我已经按照 OSDev Wiki 上的教程进行操作,现在我正在编写带有命令的控制台模式。我需要能够将 a 拆分char*
为 a char**
,而不需要所有库功能(因此是独立的)。我已经尝试迭代直到遇到分隔符等,但是无论我做什么,我都会在第一个结果的末尾遇到垃圾。我究竟做错了什么?这是我到目前为止所拥有的:
static char** splitStr (char* string, char delim) {
char returner[VGA_WIDTH][255];
int loc = 0;
int innerLoc = 0;
for (int i = 0; string[i] != 0x00; i++) {
char c = string[i];
if (c != delim) {
returner[loc][innerLoc] = c;
innerLoc++;
} else {
print ("a string was ");
println (returner[loc]);
innerLoc = 0;
loc++;
}
}
print ("the first string was ");
println (returner[0]);
return (char**)returner;
}
我在问一个关于如何在 C++ 独立模式下编写特定函数的问题。