0
我正在实现一个原始块密码。然而,这种实现使得密文的大小可能不同于明文的大小。我需要知道如何计算编码后形成的密文的大小。 strlen(char *)将不起作用,因为密文可能包含多个'\ n'字符。有没有解决这个问题?确定c中位块的大小
我正在实现一个原始块密码。然而,这种实现使得密文的大小可能不同于明文的大小。我需要知道如何计算编码后形成的密文的大小。 strlen(char *)将不起作用,因为密文可能包含多个'\ n'字符。有没有解决这个问题?确定c中位块的大小
您的编码函数应该返回大小,它是知道它的唯一实体。 实现一个单独的函数来“找出大小”意味着重新实现算法的一半。
所以,如果在你的编码功能,你有这样的事情:
while (...)
buf[i++] = stuff;
您应该返回i
。
唯一的,唯一的好答案... – Bart 2012-02-01 17:45:21
strlen与嵌入式'\ n'没有问题。你的意思是嵌入'\ 0'字符吗? – 2012-02-01 17:22:03
我不明白 - 如果你正在执行密码,你怎么能不知道输出块有多大?如果你的意思是'我如何解析解码块',你将不得不实现一些协议来包装块。 – 2012-02-01 17:24:18