代码解释,越细越好!

pause123 2009-05-31 11:43:57
int main(int argc, char *argv[])
{
int i = 0;
char buffer[1000] = "msg";
PROC_INFO stProcess;

// if(utDaemonStartup(argv[0], &stProcess, sigUsr1) != RET_OK)
// {
// exit(1);
// }

fprintf(stderr, "Call utInitLog(%s)\n", argv[0]);
if(utInitProc(argv[0], NULL, sigUsr1) != RET_OK)
{
fprintf(stderr, "utInitLog(%s)失败\n", argv[0]);
exit(1);
}
fprintf(stderr, "Call updateShmStatus(%s)\n", argv[0]);
updateShmStatus(argv[0], PSTAT_WORKING);

fprintf(stderr, "Call closeUTShm(%s)\n", argv[0]);
closeUTShm();

for(i = 0; i < argc; ++i)
{
strcat(buffer, " ");
strcat(buffer, argv[i]);
}
while(1)
{
printf("%s\n", buffer);
sleep(1);
}
}
...全文
131 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
不知道你那里有语法不明白
china_west 2009-06-01
  • 打赏
  • 举报
回复
代碼最好寫點注釋
性能侠客行 2009-06-01
  • 打赏
  • 举报
回复

int main(int argc, char *argv[])
{
int i = 0;
char buffer[1000] = "msg";
PROC_INFO stProcess;

// if(utDaemonStartup(argv[0], &stProcess, sigUsr1) != RET_OK)
// {
// exit(1);
// }

fprintf(stderr, "Call utInitLog(%s)\n", argv[0]);
if(utInitProc(argv[0], NULL, sigUsr1) != RET_OK) //初始化 与closeUTShm 应该是成对出现的 ,相当与open
{
fprintf(stderr, "utInitLog(%s)失败\n", argv[0]);
exit(1);
}
fprintf(stderr, "Call updateShmStatus(%s)\n", argv[0]);
updateShmStatus(argv[0], PSTAT_WORKING);

fprintf(stderr, "Call closeUTShm(%s)\n", argv[0]);
closeUTShm();//关闭UTshm 与utInitProc是成对出现的

for(i = 0; i < argc; ++i)// 将输入参数保存至buffer
{
strcat(buffer, " ");
strcat(buffer, argv[i]);
}
while(1)
{
printf("%s\n", buffer);//输入输入参数
sleep(1);
}
fanguanggao 2009-06-01
  • 打赏
  • 举报
回复
我想用JAVA写的语言更精炼,而且也易懂!只是推荐
FCARM 2009-06-01
  • 打赏
  • 举报
回复
楼主能说一下,哪个地方不明白吗?
这样大家可以帮你分析啊。
FCARM 2009-06-01
  • 打赏
  • 举报
回复
觉得这段代码还有可以!
zjf30366 2009-06-01
  • 打赏
  • 举报
回复
有什么问题。
dongxyang 2009-06-01
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 lingyin55 的回复:]
C/C++ code
int main(int argc, char *argv[])
{
int i = 0;
char buffer[1000] = "msg"; ///变量定义不用说了吧
PROC_INFO stProcess; ///这里应该是定义了一个结构体

// if(utDaemonStartup(argv[0], &stProcess, sigUsr1) != RET_OK)
// {
// exit(1);
// }

fprintf(stderr, "Call utInitLog(%s)\n", argv[0]); /////将argv[0]格式化数据输出到一个流上
if(utInitProc(argv[0], NULL, sigUsr1) != RET_…
[/Quote]

用的什么编辑器啊,代码很好看
dongxyang 2009-06-01
  • 打赏
  • 举报
回复
[Quote=引用楼主 pause123 的帖子:]
int main(int argc, char *argv[])
{
int i = 0;
char buffer[1000] = "msg";
PROC_INFO stProcess;

// if(utDaemonStartup(argv[0], &stProcess, sigUsr1) != RET_OK)
// {
// exit(1);
// }

fprintf(stderr, "Call utInitLog(%s)\n", argv[0]);
if(utInitProc(argv[0], NULL, sigUsr1) != RET_OK)
{
fprintf(stderr, "utInitLog(%s)失败\n", argv[0]);
exit(1);
}
fprintf(stderr, "Call up…
[/Quote]

用的什么编辑器啊?代码很好看
liubuweiright 2009-06-01
  • 打赏
  • 举报
回复
顶...
liliangbao 2009-05-31
  • 打赏
  • 举报
回复
帮顶~
lingyin55 2009-05-31
  • 打赏
  • 举报
回复

int main(int argc, char *argv[])
{
int i = 0;
char buffer[1000] = "msg"; ///变量定义不用说了吧
PROC_INFO stProcess; ///这里应该是定义了一个结构体

// if(utDaemonStartup(argv[0], &stProcess, sigUsr1) != RET_OK)
// {
// exit(1);
// }

fprintf(stderr, "Call utInitLog(%s)\n", argv[0]); /////将argv[0]格式化数据输出到一个流上
if(utInitProc(argv[0], NULL, sigUsr1) != RET_OK) ////判断函数utInitProc的返回值是否正常。RET_OK应该是个宏定义
{
fprintf(stderr, "utInitLog(%s)失败\n", argv[0]); ///不正常执行,功能和上类似
exit(1);
}
fprintf(stderr, "Call updateShmStatus(%s)\n", argv[0]); //////
updateShmStatus(argv[0], PSTAT_WORKING); //////这个应该是调用更新shm状态的函数

fprintf(stderr, "Call closeUTShm(%s)\n", argv[0]);
closeUTShm(); //////关闭

for(i = 0; i < argc; ++i) /////进入一个循环,argc是命令行中输入的参数个数
{
strcat(buffer, " "); ////这里两句的作用是把命令行中的参数都写到buffer中
strcat(buffer, argv[i]);
}
while(1) /////定义一个死循环
{
printf("%s\n", buffer); ////输出buffer
sleep(1); /////睡1毫秒(windows下),如果是linux,这里是睡1秒。
}
}

69,369

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧