我正在使用队列实现两个进程之间的通信.问题是,当我调用函数mq_receive时,我收到此错误:消息太长.
我做了以下事情:
struct mq_attr attr;
long size = attr.mq_msgsize;
.... // initializing the queue "/gateway"
int rc = mq_receive(gateway, buffer, size, &prio);
Run Code Online (Sandbox Code Playgroud)
如果我打印大小值,我得到size = 1,而当我打印相同的大小但从另一个程序(通过相同的机制获得),我得到一些不长的整数(-1217186280)...
我怎么能解决这个错误?....所以当size = 1时,我认为说"消息太长"是正确的,但为什么是1?
PS我也尝试过:
int rc = mq_receive(gateway, buffer, sizeof(buffer), &prio);
Run Code Online (Sandbox Code Playgroud)
但没有结果.
我需要打印ASCII扩展的字符部分,即:
char p = 219; // a rectangle
printf("%c\n", p);
Run Code Online (Sandbox Code Playgroud)
但是,在shell中它没有显示正确的字符..我该怎么做才能看到矩形?
谢谢
我的问题很简单:我有一个String数组.在Java中对它进行排序给出了一个顺序,并且在Sql Server 2005中顺序略有不同.我发现的差异的一个例子是两个字符串:"jyl; pagespro","jyl",Java按此顺序排序,Sql按逆序排序.我试图通过ascii(myColumn)订购Sql Server,但仍然没有效果.我该怎么解决这个问题?.....
我正在使用cudaMalloc和cudaMemcpy来分配一个矩阵并将其复制到它的向量数组中,如下所示:
float **pa;
cudaMalloc((void***)&pa, N*sizeof(float*)); //this seems to be ok
for(i=0; i<N; i++) {
cudaMalloc((void**) &(pa[i]), N*sizeof(float)); //this gives seg fault
cudaMemcpy (pa[i], A[i], N*sizeof(float), cudaMemcpyHostToDevice); // also i am not sure about this
}
Run Code Online (Sandbox Code Playgroud)
我的指示有什么问题?提前致谢
PS A [i]是一个向量
现在我正在尝试将一个矩阵从Device复制到主机的矩阵:
假设我在设备中有**pc,并且**pgpu在主机中:
cudaMemcpy (pgpu, pc, N*sizeof(float*), cudaMemcpyDeviceToHost);
for (i=0; i<N; i++)
cudaMemcpy(pgpu[i], pc[i], N*sizeof(float), cudaMemcpyDeviceToHost);
Run Code Online (Sandbox Code Playgroud)
=错了....
在尝试插入名为"my_card"的表时,我遇到了一个非常奇怪的错误.
这些是我在单独的接口中定义的一些常量:
//tables name
public static final String TABLE_MY_CARD= "my_card" ;
public static final String TABLE_MY_CONTACTS = "my_contacts" ;
// Columns
public static final String NAME = "name" ;
public static final String PHONE = "phone" ;
public static final String EMAIL = "email";
public static final String FACEBOOK = "facebook";
public static final String WEBSITE = "web";
public static final String MAJOR = "major";
public static final String ULINK = "ulink";
Run Code Online (Sandbox Code Playgroud)
之后我有一个扩展SQLiteOpenHelper的类,有2个函数.最重要的是第一个创建参数给出的表.
public class MySQLite_methods extends SQLiteOpenHelper implements Tables …Run Code Online (Sandbox Code Playgroud) 我创建了一个启用蓝牙并发现其他设备的应用程序.在清单中我有以下内容:
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>
Run Code Online (Sandbox Code Playgroud)
但是,在设备上有以下例外:
11-20 08:08:47.766: E/AndroidRuntime(9380): FATAL EXCEPTION: main
11-20 08:08:47.766: E/AndroidRuntime(9380): java.lang.SecurityException: Need BLUETOOTH permission: Neither user 10111 nor current process has android.permission.BLUETOOTH.
Run Code Online (Sandbox Code Playgroud)
还有什么我必须添加到Manifest以便它的工作?
这是显而易见的:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="cajun.meet"
android:versionCode="1"
android:versionName="1.0">
<uses-sdk android:minSdkVersion="8" />
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".CajunMeetActivity"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".MyULCard"
android:label="@string/app_name">
</activity>
<activity android:name=".MyULContacts"
android:label="@string/app_name">
</activity>
<service android:name = ".BluetoothExchange" android:exported="true" android:enabled="true">
</service>
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>
</application>
</manifest>
Run Code Online (Sandbox Code Playgroud) 我有一个很长时间的应用程序用GAE api为Python创建.不幸的是我丢失了源代码,我尝试使用此命令检索它:
appcfg.py download_app -A <app-id> <path>
Run Code Online (Sandbox Code Playgroud)
作为app-id,我刚写了地址的第一部分,例如,如果我有myApp22.appspot.com - 我写了myApp22.但是脚本输出是"此应用程序不存在".我相信它需要一个真正的应用程序ID,如下所述:https://developers.google.com/eclipse/docs/appengine_appid_version
但我无法访问我的源文件.有没有其他方法可以找到我的应用程序ID?
非常感激.
我有兴趣使用ctime在不同的点上显示C中程序的执行时间.我尝试过类似的东西,但一定不对......
int main() {
time_t tm1, tm2;
tm1 = time(NULL);
sleep(2);
tm2 = ctime(tm1);
printf("%d\n", tm2-tm1);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
你有什么建议或正确的例子吗?提前致谢
我曾经使用这个函数从一个php页面重定向到另一个:
header( 'Location: student.php?cnp='.$_REQUEST['name']) ;
Run Code Online (Sandbox Code Playgroud)
在我的localhost中它确实有效,但如果在互联网上测试它,它不会重定向.我也试图给出完整的路径(比如http://.../student.php?...),但它仍然不起作用.有谁知道为什么,我该怎么办?