我有一个C程序,它生成一系列图像,我想把它们变成一个应该实时流式传输或存储在文件中的视频.在阅读ffmpeg文档时,我偶然发现ffmpeg可以从命名管道获取输入.
我的问题是管道中的文件应该采用何种格式,以及如何将文件输入管道.
今天我遇到了与gcc的奇怪遭遇.考虑以下代码:
float len[ELEM+1];
len[1]=1.0; len[2]=2.0; len[3]=3.0; //length
nod[1][1] = 1;
nod[1][2] = 2;
nod[2][1] = 2;
nod[2][2] = 3;
nod[3][1] = 3;
nod[3][2] = 4; //CONNECTIVITY
for(i=1;i<nnod;i++)
for(j=1;j<nfree;j++)
/* blah blah.........*/
Run Code Online (Sandbox Code Playgroud)
一个变化:
float len[ELEM+1];
len[1]=1.0; len[2]=2.0; len[3]=3.0; //length
nod[1][1] = 1;
nod[1][2] = 2;
nod[2][1] = 2;
nod[2][2] = 3;
nod[3][1] = 3;
nod[3][2] = 4; //CONNECTIVITY
Run Code Online (Sandbox Code Playgroud)
LEN [1] = 1.0; LEN [2] = 2.0;
for(i=1;i<=nnod;i++)
for(j=1;j<=nfree;j++)
/* blah blah.........*/
Run Code Online (Sandbox Code Playgroud)
唯一的区别是以粗体突出显示.问题是:当稍后打印长度时,第一个代码打印len [1]和len [2](并在表达式中使用它们)为0.0000,而第二个代码打印并使用这些变量的正确值.
怎么了?我完全糊涂了.: -
注意:len不会在其他地方修改.