小编MBy*_*ByD的帖子

Android NDK问题

我尝试在我自己的android应用程序中添加和编译ffmpeg库.当我添加本机支持并在jni中添加ffmpeg库时,Eclipse会显示许多错误,例如:

uint8_t  *bufferConverted=NULL;
static GLuint textureConverted=0;
Run Code Online (Sandbox Code Playgroud)

错误:

Type 'uint8_t' could not be resolved
Symbol 'NULL' could not be resolved
Type 'GLuint' could not be resolved
Run Code Online (Sandbox Code Playgroud)

我该如何解决这个问题?

android ffmpeg android-ndk

1
推荐指数
1
解决办法
3621
查看次数

使用字符串参数镜像方法

我正在尝试使用镜像来调用我的类MyClass的方法s1,参数为s2.Java抱怨String.TYPE不存在.我检查了API并且它是正确的:我不能做与调用Integer.TYPE时相同的事情.但是我怎么能解决这个问题呢?我需要类型为String的类型,否则该方法会抛出异常.

public void trying(MyClass method, String s1, String s2){
   try {
       Class cls = Class.forName("MyClass");
       Class partype[] = new Class[1];
       partype[0] = String.TYPE;
       Method meth = cls.getMethod(s1, partype);
       meth.invoke(methobj, s2);
   }
   catch (Throwable e) {
        System.err.println(e);
   }
}
Run Code Online (Sandbox Code Playgroud)

java string reflection mirroring

1
推荐指数
1
解决办法
122
查看次数

在中间读取并复制带有EOF指示的文件

我使用下面的代码从一个二进制文件复制到另一个,但第一个文件包含一些EOF指示符(0xFF)作为其一部分,因此复制功能实际上复制文件直到它的第一个EOF指示符.

例如:如果我的文件{0x01, 0x02, 0x03, 0xFF, 0x01, 0x02, 0xFF, 0xFF}只是{0x01, 0x02, 0x03}将被复制到新文件.任何想法如何解决它(或者我可能在那里遗漏了一些......)

码:

int Util_Copy_File(char* source, char* dest)
{
    FILE *fs,*ft;  
    char ch;
    char infile[100];
    sprintf(infile, "%s", dest);
    fs = fopen(infile,"r");  
    if(fs==NULL)  
    {
        return -1;  
    }
    ft = fopen(dest,"w");  
    if(ft==NULL)  
    {  
    fclose(fs);  
    return STATUS_FAIL;
    }  

    while(1)  
    {  
    ch = getc(fs);  
    if(ch==EOF)  
    {  
        break;  
    }  
    else  
        putc(ch,ft);  
    } 
    fclose(fs);  
    fclose(ft);
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

谢谢,Binyamin

c c++ file-io eof

0
推荐指数
1
解决办法
1599
查看次数

运行定义为变量的函数

我有一个用C编写的程序,它包含2个函数,一个函数是main(),另一个函数是预编译函数,存储为字节数组(让我们称之为varFunc()).指向数组的指针在main函数中被转换为函数指针,然后从main函数中调用它.(见下面的代码)

现在,我知道有操作系统和一些处理器不允许从数据部分执行代码,我varFunc应该就在那里......

有没有办法使用C语言让C编译器在代码/文本部分添加一些变量?如果没有,有没有办法在大多数编译器中通过编译器强制执行?

    char varFuncArr[] = { 0xDE, 0x67, 0x6F, 0x6F, 0xAC, 0x13, 0x05, 0x01, 0xDA, 0xF0, 0xBD, 0x79, 0xA9, 0x10, 0x00, 0x00, 0xB8, 0x74, 0x00, 0x00, 0x00, 0x3F, 0x58, 0x13, 0xEA, 0x0A, 0x2E, 0xEE, 0xC7, 0x01, 0x05, 0xD0, 0x6E, 0xB8, 0x9E};

    typedef unsigned long (*funcPtr)(void* d[]);

    int main(int argc, char** argv)
    {
        unsigned int ra[8];
        funcPtr varFunc;
        for (i=0; i<8; i++)
             ra[i] = 0;
        varFunc = (funcPtr)varFuncArr;
        return varFunc(ra); …
Run Code Online (Sandbox Code Playgroud)

c

0
推荐指数
1
解决办法
131
查看次数

使用Parcelable时出现空指针异常

我创建了一个java类'store',它只存储我通过2个微调器给出的值和一个edittext ...我使用parcelable将该类的对象传递给中间类Spinpizza.java,然后是Bill.java ...... .它显示正确的输出,直到SpinPizza ...(显示通过微调器编辑文本输入的值),但它在Bill.java中给出了点指针:(请帮助我......我坚持了4天以上. .

这是我的代码......

Store.java

package com.Lak;

import android.os.Parcel;
import android.os.Parcelable;


public class store implements Parcelable {
    /**
     * 
     */
    private static final long serialVersionUID = 1L;
    private String pizzaname;
    private String pizzasize;
    private int n;
    public void setOrder(String name,String size,int qty)
    {
        pizzaname = name;
        pizzasize = size;
        n = qty;
    }
    public String getPizzaName()
    {
        return pizzaname;

    }

    public int getQuantity()

    {return n;}
    public String getPizzaSize() {
        // TODO Auto-generated method stub
        return pizzasize;
    } …
Run Code Online (Sandbox Code Playgroud)

java nullpointerexception

0
推荐指数
1
解决办法
3652
查看次数

未调用Thread类中的Run方法

我是一个非常新的线程世界的人,一直试图解决这个问题一个星期了.

Thread类中的run方法由于某种原因没有被调用,我不知道为什么(但是很想知道)

        ProcessBuilder processBuilder = new ProcessBuilder();

        processBuilder.command("/bin/sh", "-c", "echo \"w30000001z,none,16488,,181075\nw30000001z,none,16488,,181082\n\" | /home/beehive/bin/exec/tableSize");
        Process process = processBuilder.start();
        process.waitFor(); 

        InputStream stdin = process.getInputStream();
        OutputStream stdout = process.getOutputStream();
        InputStream stderr = process.getErrorStream();

        BufferedReader reader = new BufferedReader(new InputStreamReader(stdin));
        BufferedReader error = new BufferedReader(new InputStreamReader(stderr));
        StreamGobbler errorStream = new StreamGobbler(process.getErrorStream(), "ERROR");
        StreamGobbler outputStream = new StreamGobbler(process.getInputStream(), "OUTPUT");

        errorStream.start();
        outputStream.start();
        errorStream.join();
        outputStream.join();
Run Code Online (Sandbox Code Playgroud)

tableSize是一个python可执行文件,它通过stdin获取输入,处理它并输出几行文本.我需要收集此输出并对其进行进一步处理.

有一个单独的线程来处理inputStream和errorStream上的输出.该线程类如下所示.

/* StreamGobbler.java */
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.PrintWriter;

class StreamGobbler extends Thread
{ …
Run Code Online (Sandbox Code Playgroud)

java multithreading iostream processbuilder

0
推荐指数
1
解决办法
1287
查看次数

Android和GSon

我开始看谷歌的Gson了.输入以下代码错误,因为无法识别最后一行中的Gson.进口是好的,所以我错过了什么?

import com.google.gson.*;
import com.google.gson.stream.*;

public class BuildJsonObject {
    Gson myGson = new Gson();
}
Run Code Online (Sandbox Code Playgroud)

android gson

0
推荐指数
1
解决办法
768
查看次数

Linux服务器编程

我从Andy Tanenbaum的书中得到了这段代码.我正在尝试运行它.它编译并等待连接.但是当我打字时localhost:886,我发现浏览器或终端都没有效果.(它应该根据代码回显一个新的连接字符串).

#define     SERVER_PORT         886     /* The port at which the server listens */
#define     BUF_SIZE        64032       /* The size of buffer for request and response */
#define     QUEUE_SIZE      10      /* Block transfer size */


int main (int argc, char* argv[]) {

    int     sock = 0, bnd = 0, lst = 0, fd = 0, sa = 0, bytes = 0, on = 1, conn_count = 0;
    char    buf[BUF_SIZE];
    struct  sockaddr_in channel;            /* IP address holder */

    /* …
Run Code Online (Sandbox Code Playgroud)

c linux network-programming

0
推荐指数
1
解决办法
304
查看次数

int someInts [3]和int*someInts = new int [3]之间的区别?

使用int someInts[3]和使用声明一个新的整数数组有什么区别int* someInts = new int[3]

c++ arrays pointers declaration

0
推荐指数
1
解决办法
977
查看次数

HH:MM:SS Countdowntimer

我无法弄清楚如何使用毫秒来制作HH:MM:SS Countdowntimer.我需要制作一个CountdownTimer,告诉我们到第二天要剩下多少小时,分钟和秒.这是我的代码:

  final SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);
   long timer = prefs.getLong("TIME", 86400000);
   new CountDownTimer(timer, 1000) {

         public void onTick(long elapsed) {

                                        time.setText(elapsed/3600000+":"+elapsed/1440000+":"+elapsed/?);
                              SharedPreferences.Editor editor = prefs.edit();
                              editor.putLong("TIME",elapsed);
                              editor.commit(); 
         }
         public void onFinish() {

         }
      }.start();
Run Code Online (Sandbox Code Playgroud)

PS:此外,它必须节省到最后一次检查所剩的时间.我很期待你们的回复.先感谢您!

android countdowntimer

0
推荐指数
1
解决办法
1611
查看次数