Redian新闻
>
求教Scienfic workplace中如何展开tex field?
avatar
求教Scienfic workplace中如何展开tex field?# TeX - TeX电子排版系统
g*l
1
现在学校里面用的zimbra系统,我马上离开这个学校
但是很多的emails,我可以把email导出成.tgz格式的一个文件
但是我想知道,我可以用什么样的软件吧这个tgz格式文件打开?
avatar
h*a
2
实现下面二个函数
void * aligned_malloc(size_t bytes, size_t alignment);
void aligned_free(void * p);
要求:
may only use the C runtime functions malloc and free in their implementation
and cannot use any static memory. aligned_malloc takes the size of the
buffer you would like to allocate and also alignment which is a power of two
that will force the starting address of the buffer you return to the user
to start on an alignment boundary. aligned_free frees the buffer returned
from aligned_malloc.
我是这么写的,不
avatar
s*d
3
遇到一个问题: 用我得来的一个模板编辑文本,结果存完退出之后再次打开,之前写
的example/remark/note 之类的具体内容都不见了,只留下一个tex field indicating
“example/remark”. 如何展开呢
avatar
d*z
4
两处错误:
i)分配内存空间偏小
ii)free()传入的参数不是malloc产生的结果

implementation
two

【在 h****a 的大作中提到】
: 实现下面二个函数
: void * aligned_malloc(size_t bytes, size_t alignment);
: void aligned_free(void * p);
: 要求:
: may only use the C runtime functions malloc and free in their implementation
: and cannot use any static memory. aligned_malloc takes the size of the
: buffer you would like to allocate and also alignment which is a power of two
: that will force the starting address of the buffer you return to the user
: to start on an alignment boundary. aligned_free frees the buffer returned
: from aligned_malloc.

avatar
s*d
5
ding
avatar
h*a
6

多谢指点,只是不明白free函数,我还以为是调用它时将malloc产生的结果作为参数传
递进去。

【在 d*z 的大作中提到】
: 两处错误:
: i)分配内存空间偏小
: ii)free()传入的参数不是malloc产生的结果
:
: implementation
: two

avatar
t*t
7
你以为得挺对啊,但是你的程序写出来不是这么回事啊

【在 h****a 的大作中提到】
:
: 多谢指点,只是不明白free函数,我还以为是调用它时将malloc产生的结果作为参数传
: 递进去。

avatar
h*a
8

不明白,你指的是得另外写个函数来调用malloc 和 free 么?

【在 t****t 的大作中提到】
: 你以为得挺对啊,但是你的程序写出来不是这么回事啊
avatar
E*V
9
你的p的地址不对

【在 h****a 的大作中提到】
:
: 不明白,你指的是得另外写个函数来调用malloc 和 free 么?

avatar
p*s
10
不是, malloc和free至少应该对齐一个对象/地址吧,
否则有啥意义?

【在 h****a 的大作中提到】
:
: 不明白,你指的是得另外写个函数来调用malloc 和 free 么?

avatar
j*r
11
I guess this may work, oh well not sure if I understand the problem
correctly.
void * aligned_malloc(size_t bytes, size_t alignment)
{
int total_allocated_size = bytes;
// make # of allocated bytes up to aligned boundary
total_allocated_size += bytes % alignment;
return malloc(total_allocated_size);

};
void aligned_free(void * p)
{
free(p);
};
avatar
j*r
12
I was wrong on total_allocated_size calculation.
LOL
avatar
j*g
13
while (1)
{
if ((buf =(char*) malloc(byte)) == NULL)
exit 1;
if (buff % alignment)
break;
else
free(buf);
}
avatar
p*g
14
total_allocated_size += (bytes % alignment)?alignment-(bytes%alignment):0;

【在 j********r 的大作中提到】
: I guess this may work, oh well not sure if I understand the problem
: correctly.
: void * aligned_malloc(size_t bytes, size_t alignment)
: {
: int total_allocated_size = bytes;
: // make # of allocated bytes up to aligned boundary
: total_allocated_size += bytes % alignment;
: return malloc(total_allocated_size);
:
: };

avatar
t*t
15
你这个未免太瞎搞了

【在 j****g 的大作中提到】
: while (1)
: {
: if ((buf =(char*) malloc(byte)) == NULL)
: exit 1;
: if (buff % alignment)
: break;
: else
: free(buf);
: }

avatar
p*g
16
没有幽默感,面试过不了

【在 t****t 的大作中提到】
: 你这个未免太瞎搞了
avatar
j*g
17
er...好像写错了
应该是
if (! (buf % alignment) )
break;
随便写写给大家扩展思路。老看标准答案多没意思。实际上根据现在编译器优化水平和
实际应用里给的alignment,我这个的效率未必低啊。
记得以前上过一门课里提到knuth大人给出过一个最慢排序算法,
O(3^(2^(2^(2^2n))))...

【在 t****t 的大作中提到】
: 你这个未免太瞎搞了
avatar
f*y
18
最慢排序好像以前也有比赛的
要求算法必须有解释的
当然比较主观

【在 j****g 的大作中提到】
: er...好像写错了
: 应该是
: if (! (buf % alignment) )
: break;
: 随便写写给大家扩展思路。老看标准答案多没意思。实际上根据现在编译器优化水平和
: 实际应用里给的alignment,我这个的效率未必低啊。
: 记得以前上过一门课里提到knuth大人给出过一个最慢排序算法,
: O(3^(2^(2^(2^2n))))...

avatar
t*t
19
你居然是认真的
问题在于, 你分配了一看不对再释放, 下次分配的多半是同一个地址, 不就死循环了么.

【在 j****g 的大作中提到】
: er...好像写错了
: 应该是
: if (! (buf % alignment) )
: break;
: 随便写写给大家扩展思路。老看标准答案多没意思。实际上根据现在编译器优化水平和
: 实际应用里给的alignment,我这个的效率未必低啊。
: 记得以前上过一门课里提到knuth大人给出过一个最慢排序算法,
: O(3^(2^(2^(2^2n))))...

相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。