我需要用sigaction处理一些信号,但是当我编译我的代码时,我得到这个错误:
警告:从不兼容的指针类型分配
代码是:
struct sigaction hup_act;
...
hup_act.sa_flags=SA_SIGINFO;
hup_act.sa_sigaction = sighupHandler;
sigaction(SIGHUP, &hup_act, NULL);
Run Code Online (Sandbox Code Playgroud)
警告在hup_act.sa_sigaction分配上.当我将sighup发送到我的应用程序时,此警告会导致分段错误.
我今天开始探索RSA的openSSL api.这是简单的代码:
#include<stdio.h>
#include<openssl/rsa.h>
#include<openssl/engine.h>
int main() {
RSA *rsa;
rsa = RSA_new_();
RSA_free(rsa);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
我正在编译
gcc -I/usr/local/ssl/include -o等等
但是gcc返回了对RSA_new和RSA_free的未定义引用的错误.我检查了rsa.h头文件,并没有引用这两个函数.怎么了?我遵循openssl网站上的参考指南......
编辑:gcc输出:
gcc -I/usr/local/ssl/include/-o rsa rsa.c -L/usr/local/ssl/lib -lcrypto /usr/local/ssl/lib/libcrypto.a(dso_dlfcn.o):功能
dlfcn_globallookup': dso_dlfcn.c:(.text+0x1d): undefined reference todlopen'dso_dlfcn.c :(.text + 0x33):对dlsym' dso_dlfcn.c:(.text+0x3d): undefined reference todlclose的未定义引用'/usr/local/ssl/lib/libcrypto.a(dso_dlfcn.o):在函数dlfcn_bind_func': dso_dlfcn.c:(.text+0x3b1): undefined reference todlsym'dso_dlfcn.c :(.text + 0x490) :对dlerror' /usr/local/ssl/lib/libcrypto.a(dso_dlfcn.o): In functiondlfcn_bind_var的未定义引用':dso_dlfcn.c :(.text + 0x511):对dlsym' dso_dlfcn.c:(.text+0x5f0): undefined reference todlerror'/dlfcn_load': dso_dlfcn.c:(.text+0x667): undefined reference tousr /local/ ssl/lib/libcrypto.a(dso_dlfcn.o)的未定义引用:在函数dlopen'dso_dlfcn.c :( .text + …
几秒钟后,我会隐藏我的应用程序的导航栏和操作栏,显示不会被触摸,并将当前视图扩展到全屏。然后,如果用户触摸屏幕(或者向下滑动更好),则再次使两者可见。如何?
有没有办法在运行时检查设备是否有NFC读卡器?我的应用程序使用NFC执行任务,但如果没有阅读器,则可以使用按钮执行相同的任务.
我在Android工作室面临一个奇怪的问题.我正在使用apache库来进行一些http请求,我需要更改
org.apache.http.impl.client.DefaultHttpClient;
Run Code Online (Sandbox Code Playgroud)
不赞成使用
org.apache.http.impl.client.HttpClientBuilder;
Run Code Online (Sandbox Code Playgroud)
但android工作室没有找到那个包.我能怎么做?
我在C unix中有一个客户端/服务器应用程序,我需要使用类似RSA(但不一定是RSA)的加密/解密数据。是否有用于此类功能的库(及相应的文档)?
我的类应该将参数传递给DialogFragment,但是我的应用程序在onCreate方法(对话框类)中崩溃,导致NullPointerException.Dialog片段类代码部分:
public class ConfirmDialog extends DialogFragment {
public ConfirmDialog() {}
ConfirmDialog newInstance(String f) {
ConfirmDialog d = new ConfirmDialog();
Bundle args = new Bundle();
args.putString("FILE_NAME", f);
d.setArguments(args);
return d;
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
file = getArguments().getString("FILE_NAME");
}
Run Code Online (Sandbox Code Playgroud)
我在这一行有nullpointer:
file = getArguments().getString("FILE_NAME");
Run Code Online (Sandbox Code Playgroud)
我不知道为什么.我也粘贴代码调用对话框
private void showConfirmDialog(String file) {
FragmentManager fm = getSupportFragmentManager();
ConfirmDialog dialog = new ConfirmDialog();
Log.i("SHOWFILEACTIVITY", file);
dialog.newInstance(file);
dialog.show(fm, "fragment_confirm_dialog");
}
Run Code Online (Sandbox Code Playgroud)
这里的"文件"字符串不为空,我已经检查过了
Log.i("SHOWFILEACTIVITY", file);
Run Code Online (Sandbox Code Playgroud) 我一生中第一次遇到这个奇怪的错误,我不知道这意味着什么。我有一个类,它从PostgreSQL数据库上的表中检索信息,进行一些操作并返回带有已解析元素的arraylist:
ResultSet rs = ProduttoreDCS.getProduttori();
System.out.println("Recuperato result set produttori");
ArrayList<String[]> res = new ArrayList<String[]>();
while (rs.next()) {
String[] current = new String[6];
current[0] = Integer.toString(rs.getInt("partita_iva"));
current[1] = rs.getString("nome");
current[2] = rs.getString("cognome");
current[3] = rs.getString("via_sede");
current[4] = rs.getString("citta_sede");
current[5] = rs.getString("provincia_sede");
res.add(current);
current = null;
}
return res;
Run Code Online (Sandbox Code Playgroud)
错误在“ while”行上。
public static ResultSet getProduttori() throws ClassNotFoundException, SQLException {
/*
* retrieve all record from produttori table
*/
Connection conn = null;
ResultSet res = null;
Statement stmt = null;
String query …Run Code Online (Sandbox Code Playgroud) 在我的Angular应用程序中,我有一个父模块与其他子模块一起填充.我的子模块有这个模板:
<input type="radio" class="form-control"
[checked] = "message.default == 1"
[value] = "message.default"
(change)="onSelectionChange(message)"
name="default" >
Run Code Online (Sandbox Code Playgroud)
这是ts:
export class MessageComponent implements OnInit {
message: MessageInterface;
@Output() onCheckedChange = new EventEmitter<MessageInterface>();
constructor() { }
ngOnInit() {
}
onSelectionChange(message: MessageInterface) {
this.onCheckedChange.emit(message);
}
}
Run Code Online (Sandbox Code Playgroud)
这是我的父模板
<div #placeholder ></div>
Run Code Online (Sandbox Code Playgroud)
和ts
export class ParentComponent implements OnInit {
@ViewChild('placeholder', {read: ViewContainerRef}) placeHolder;
ngOnInit() {
for(let i=0; i<this.aVariable; i++) {
let factory = this.componentFactoryResolver.resolveComponentFactory(ChildComponent);
this.placeHolder.createComponent(factory);
}
}
onCheckedChange(message: MessageInterface) {
console.log("parent intercept");
}
Run Code Online (Sandbox Code Playgroud)
其中"aVariable"变量是从我调用的服务返回的值.
当我点击radiobutton时,没有显示日志消息,似乎父节点没有收到EventEmitter发射.怎么了?
我有这部分代码用于对话片段
public class DialogOne extends DialogFragment {
private Button b;
public DialogOne() {}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.dialog_one, container);
getDialog().setTitle("Titolo del dialog");
b = (Button)getDialog().findViewById(R.button.ok);
b.setOnclickListener(new OnClickListener() {
@Override
public void onClick(View v) {
getDialog().dismiss();
}
});
return view;
}
Run Code Online (Sandbox Code Playgroud)
所以当我按下按钮时,必须关闭对话框碎片.当我运行应用程序时,我在该行上的NullPoinerException包含新的OnClickListener.我该如何解决?
> 02-28 21:05:44.623: E/AndroidRuntime(8487): FATAL EXCEPTION: main
02-28 21:05:44.623: E/AndroidRuntime(8487): java.lang.NullPointerException
02-28 21:05:44.623: E/AndroidRuntime(8487): at com.example.dialogs.DialogOne.onActivityCreated(DialogOne.java:37)
02-28 21:05:44.623: E/AndroidRuntime(8487): at android.support.v4.app.Fragment.performActivityCreated(Fragment.java:1468)
02-28 21:05:44.623: E/AndroidRuntime(8487): at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:931)
02-28 21:05:44.623: E/AndroidRuntime(8487): at …Run Code Online (Sandbox Code Playgroud)