题解 | #字符串分隔#
字符串分隔
https://www.nowcoder.com/practice/d9162298cb5a437aad722fccccaae8a7
#include <stdio.h> #include <string.h> char splited[9]; char str[102]; int main() { int len = 0, i = 0; memset(str, '\0', sizeof(str)); memset(splited, '\0', sizeof(splited)); if (fgets(str, sizeof(str), stdin) != NULL) { len = strlen(str) - 1; while (i + 8 < len) { memcpy(splited, str + i, 8); printf("%s\n", &splited[0]); //printf("%s\n", splited); i += 8; } len = len - i; //剩余未拷贝的 memcpy(splited, str + i, len); memset(splited + len, '0', 8 - len); printf("%s\n", &splited[0]); //printf("%s\n", splited); } return 0; }
原本很简单,调试时遇到问题:在msvc下可以直接打印char[],但是在gcc下只能把char[]转换成char*才能打印出来。