Visual Studio 2008 - 用C编译
我正在编写链接列表应用程序但是当我尝试释放每个节点时,我会抛出一个异常.我唯一能想到的是我在add函数中分配了我的内存,也许我不能在另一个函数中释放它.公寓从那我想不出什么.
非常感谢任何建议,
#include <stdio.h>
#include <stdlib.h>
static struct convert_temp
{
size_t cel;
size_t fah;
struct convert_temp *next;
} *head = NULL, *tail = NULL;
Run Code Online (Sandbox Code Playgroud)
=======
/** Add the new converted temperatures on the list */
void add(size_t cel, size_t fah)
{
struct convert_temp *node_temp = NULL; /* contain temp data */
node_temp = malloc(sizeof(node_temp));
if(node_temp == NULL)
{
fprintf(stderr, "Cannot allocate memory [ %s ] : [ %d ]\n",
__FUNCTION__, __LINE__);
exit(0);
}
/* Assign …Run Code Online (Sandbox Code Playgroud) 最近我在工作中听到很多关于COM的消息.我还了解到COM很老了.COM已弃用.COM没有前途.这些也是真的吗?
我想学习COM,因为我想知道它有什么大惊小怪,但我无法说服自己,这是花费这么多时间和学习它的坚实理由.
所以,任何人都可以告诉我:
无法在"inserted"和"deleted"表中使用text,ntext或image列.
在这种情况下应该采取哪些解决方法?:(
我想舍入(0位小数)flot图的x轴上的值.x-axix显示周数.有谁知道这是怎么做到的吗?
我即将开始处理需要读取字节和创建字符串的事情.正在读取的字节表示UTF-16字符串.所以只是为了测试我想要将UTF-16编码的简单字节数组转换为字符串.数组中的前2个字节必须表示字节序,因此必须是0xff 0xfe或0xfe 0xff.所以我尝试按如下方式创建我的字节数组:
byte[] bytes = new byte[] {0xff, 0xfe, 0x52, 0x00, 0x6F, 0x00};
Run Code Online (Sandbox Code Playgroud)
但是我收到一个错误,因为0xFF和0xFE太大而无法放入一个字节(因为字节是用Java签名的).更确切地说,错误是int无法转换为字节.我知道我可以使用强制转换显式地从int转换为byte并获得所需的结果,但这不是我的问题.
为了尝试一些东西,我创建了一个String并调用了getBytes("UTF-16")然后打印了数组中的每个字节.输出有点令人困惑,因为前两个字节是0xFFFFFFFE 0xFFFFFFFF,后跟0x00 0x52 0x00 0x6F.(显然这里的字节顺序与我上面尝试创建的不同,但这并不重要).
使用此输出我决定尝试以相同的方式创建我的字节数组:
byte[] bytes = new byte[] {0xffffffff, 0xfffffffe, 0x52, 0x00, 0x6F, 0x00};
Run Code Online (Sandbox Code Playgroud)
奇怪的是,它工作得很好.所以我的问题是,为什么Java允许0xFFFFFF80或更大的整数值自动转换为没有显式强制转换的字节,但任何等于或大于0x80的东西都需要显式强制转换?
我打算建一张酒店桌子.但是当我尝试在Java中实现它时,我遇到了问题.
我的酒店有Level(int id) x Room(int id) x Field(String status,int counter)
php中的相同内容如下:
$level=1; $room=2;
if(isset($hotel[$level][$room])) {
print("Room: ".$level*100+$room);
print(", Status: ".$hotel[$level][$room]['status']);
print(", Total clients:".$hotel[$level][$room]['counter']);
}
Run Code Online (Sandbox Code Playgroud)
此打印返回我(如果房间存在): " 房间: 102,状态:保留,总客户: 8";
现在我想在JAVA中拥有相同的功能.
但问题是,我无法建立这个:
int[][][] my hotel;
Run Code Online (Sandbox Code Playgroud)
因为,我的多维数组中有不同的类型.
我试着这样做:
Map<String, List<String>> myHotel = new HashMap<String, List<String>>();
Run Code Online (Sandbox Code Playgroud)
要么:
List<List<List<String>>> myHotel;
Run Code Online (Sandbox Code Playgroud)
但
out.println(
myHotel.get(1).get(2).get("status") + "\n" +
out.println(myHotel.get(1).get(2).get("status"));
Run Code Online (Sandbox Code Playgroud)
甚至:
out.println("Status:" +
myHotel.get(1).get(2).get(0) + "\tClients:" +
myHotel.get(1).get(2).get(1)
);
Run Code Online (Sandbox Code Playgroud)
另外如何放置元素.我想的是:当它是MAP表时:
myHotel.put(1).add(2).add(0, "Reserved"));
// …Run Code Online (Sandbox Code Playgroud) 将消息发送到在c#/.net中while(1)循环中运行的线程(非进程)的最有效和最快速的方法是什么:
使用同步队列(例如在C#中阻止队列和线程的通信)
运行一个消息循环使用的线程上下文系统的WinForms的Application.Run和运行前的application.run订阅的捕捉线程上下文的消息话题的事件.
使用套接字或命名管道向线程发送消息.
在Linux中,我习惯用unix域套接字执行此操作,在windows中执行此操作的方法是什么?分享内存文件?命名管道?你怎么看?
我刚刚安装了ant和JDK 6,我正在尝试运行一个ant任务.我得到以下内容:
C:\Users\Giles Roadnight\workspace\Parsley\build>ant compile_spicelib_complete_flex
Buildfile: build.xml
compile_spicelib_complete_flex:
[exec] Error loading: C:\Program Files\Java\jdk1.6.0_17\jre\bin\server\jvm.dll
[exec] Result: 6
BUILD SUCCESSFUL
Total time: 0 seconds
C:\Users\Giles Roadnight\workspace\Parsley\build>
Run Code Online (Sandbox Code Playgroud)
那个文件 - 绝对是jvm.dll.我尝试以相同的结果作为管理员运行.
要安装,我运行了JDK安装程序(我已经安装了JRE),我在环境变量中设置了JAVA_HOME.我解压缩了ant并将我的ant bin目录添加到了PATH中.
我对Java一无所知,以及它是如何工作的,所以我有点迷失了.
我在64位Windows 7.我下载了64位JDK.
任何帮助非常感谢.
我如何在PHP中创建一个具有$x空元素的数组?这$x是未知的和不同的价值.例如,如果我想创建一个包含3个元素的数组,我可以这样做:
$array = array(null,null,null);
Run Code Online (Sandbox Code Playgroud)
但是,我不知道是什么$x,可能有数百万个元素,我需要自动完成.
一些朋友在各种网站的帮助下检查并知道我什么时候在雅虎信使上看不见并继续吹嘘这个.
由于对此感到好奇,我测试了许多网站,检查用户是否在yahoo messenger上不可见,并且所有网站都向我发送了C1数据包类型.
根据我的测试,我(我的ymsgr客户端)没有发回任何东西.因此,我只从执行检查的机器人收到1个数据包,就是这样,他们知道我是否隐身.
接下来我想如果我没有发回任何东西,那么也许雅虎服务器发送的东西回我测试我的朋友,我发给他一个c1包但我没有从任何人收到任何回报(既不是服务器也不是我的朋友).
那他们怎么做呢?我只是在寻找一些提示,不期待代码或其他人为我解决它.我喜欢自己学习和发现的快感,只是现在我不知道:)
谢谢.