在errno.h,这个变量被声明为extern int errno;我的问题是,errno在一些调用之后检查值是否安全或在多线程代码中使用perror()是否安全.这是一个线程安全变量吗?如果没有,那么替代方案是什么?
我在x86架构上使用linux和gcc.
我正在创建一个系统.我想知道的是,如果msg不受支持,它该怎么办?我应该说不支持的消息吗?我应该返回0还是-1?或者我应该设置一个errno(base-> errno_).有些消息我不在乎是否有错误(例如setBorderColour).其他我会(addText或者如果我创建一个保存cmd可能保存).
我想知道最好的方法是什么1)快速编码2)调试3)扩展和维护.我可能会调试第三,它很难调试ATM,但那就是有很多遗漏的代码,我没有填写.实际的错误不是很难纠正.什么是让用户知道有错误的最佳方法?
系统的工作方式与此类似但不完全相同.这是C风格,mycode有一堆内联函数,包含settext(const char*text){到msg(this,esettext,text)
Base base2, base;
base = get_root();
base2 = msg(base, create, BASE_TYPE);
msg(base2, setText, "my text");
const char *p = (const char *)msg(base2, getText);
Run Code Online (Sandbox Code Playgroud)