小编Gre*_*ill的帖子

php报价条

在我的网页中,我希望网站向用户致意,但用户名被"单引号"包围.由于这不是为了防止MySQL注入,我只想在显示页面上删除我名字周围的引号.

例如:欢迎'用户'!我试图找到我可以剥离用户周围的报价的方式,并将其显示在下面的示例中.

例如:欢迎用户!

我能想到的唯一代码是:

$ login = $ _SESSION ['login'];

有谁知道如何剥离单行报价?

php quotes strip

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

Posix线程用c ++编写

如何在linux c ++中实现posix线程.当保存为".c并使用c编译器运行时,smme程序是可以的.但是在c ++中它给出了错误..

我认为编译时我犯了错误,就像c ++的"-lpthread"一样包含任何标记

有人可以发送有效的代码......?

实际上这是我的代码

int cooperbussman :: startlistenthread()
{
        if(pthread_create(&m_thread,0,&packetreadertask,0)<0)
        {
                cout<<"Unable to create the thread Startlistenthread\n";
                return -1;
        }
        return 1;
Run Code Online (Sandbox Code Playgroud)

而我得到的错误是

cooperbussman.cpp: In member function âint cooperbussman::startlistenthread()â:
cooperbussman.cpp:76: error: invalid conversion from âvoid* (*)()â to âvoid* (*)(void*)â
cooperbussman.cpp:76: error:   initializing argument 3 of âint pthread_create(pthread_t*, const pthread_attr_t*, void* (*)(void*), void*)â

c++ multithreading posix

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

Haskell:用单引号解析转义字符

我正在为我在Haskell中编写的基本编译器制作一个扫描程序.其中一个要求是用单引号(')括起来的任何字符都被翻译成字符文字标记(类型为T_Char),这包括转义序列,如'\n'和'\ t'.我已经定义了扫描仪功能的这一部分,在大多数情况下都可以正常工作:

scanner ('\'':cs)       |   (length cs) == 0            =   error "Illegal character!"
                         |  head cs == '\\'             =   mkEscape (head (drop 1 cs)) : scanner (drop 3 cs)
                         |  head (drop 1 cs) == '\''    =   T_Char (head cs) : scanner (drop 2 cs)


                         where
                            mkEscape        :: Char -> Token
                            mkEscape 'n'    = T_Char '\n'
                            mkEscape 'r'    = T_Char '\r'
                            mkEscape 't'    = T_Char '\t'
                            mkEscape '\\'   = T_Char '\\'
                            mkEscape '\''   = T_Char '\''
Run Code Online (Sandbox Code Playgroud)

但是,当我在GHCi中运行它时会出现这种情况:

Main> scanner "abc …
Run Code Online (Sandbox Code Playgroud)

parsing haskell character-encoding

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

Git on windows:|

我一直在尝试使用git作为我的个人代码代表..而且对于Windows来说这是一个灾难.

我过去曾经使用过Subversion,CVS和Perforce ..没有人像git那样烦人.

我已经找到了PGP部分(对于github),虽然我的工作站不再让我办理登机手续,但在搜索后发现git bash使用的是不太可靠的putty,应配置其他东西..

我无法使用Windows shell扩展来配置它,以便更好地了解存储库的一部分,修改内容以及简单的检查,并轻松推送..

有没有人成功配置某种Windows shell客户端,可以高效快速地同步各种机器?

它似乎比使用它更值得痛苦.

windows git

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

如何在常见的Lisp中按顺序创建变量?

我在一个函数内部有以下代码,该函数正在读取一个映射文件.我收到一个*numrows*非法的错误.我认为这是因为lisp正在并行处理这些变量.我怎样才能解决这个问题?

(setq *numrows* (read map))
(setq *numcols* (read map))
(setq *map* (make-array '(*numrows* *numcols*) :initial-element nil))
Run Code Online (Sandbox Code Playgroud)

parallel-processing common-lisp sequential

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

如何解决轮班减少我语法中的冲突?

我正在编写一个从(简化的)Pascal到ARM asm的编译器.我正处于这个过程的第二步 - 在编写词法分析器之后,我正在使用java cup进行语法分析.

我写了我的语法,但有5个S/R冲突,这些都非常相似.例:

   Warning : *** Shift/Reduce conflict found in state #150
between assign_stmt ::= val_expr ASSIGN val_expr (*) 
  and     val_expr ::= val_expr (*) LBRACKET val_expr RBRACKET 
  under symbol LBRACKET
  Resolved in favor of shifting
Run Code Online (Sandbox Code Playgroud)

我这节的语法:

assign_stmt ::=
 val_expr ASSIGN val_expr;

val_expr ::=
     NIL | BOOL_CONST | INT_CONST | CHAR_CONST | PTR val_expr %prec MEM | ADD val_expr %prec UADD |
     SUB val_expr %prec USUB | NOT val_expr | val_expr PTR %prec VAL | val_expr …
Run Code Online (Sandbox Code Playgroud)

compiler-construction syntax pascal shift-reduce-conflict

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

函数参数的内存位置

我正在准备 UNIX 考试,有一道关于 C 变量的内存位置的问题。假设我们有这样的代码

char sth;
int some_function(int arg) {
   int some_int;
   // some code here
}
Run Code Online (Sandbox Code Playgroud)

所以我想它sth位于堆上、some_int堆栈上,但位于哪里arg?有人可以解释一下 C 变量是如何管理的吗?

谢谢

c memory argument-passing

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

在java实验室中使用While(用户输入无效输入)

我在上课的一部分实验室遇到了一些麻烦,大部分都很容易,但由于某种原因,我的声明并没有按照我的意愿行事.它应该返回无效输入,然后提示用户租用; 但是,它认为每个输入都无效.(应该很容易在代码中看到)我该如何解决这个问题?或者我可以找到这些信息,因为我无法在我的书中找到它.(第二个while循环,第一个工作)

import java.util.ArrayList;
import java.util.Scanner;
import javax.swing.JOptionPane;

public class lab8
{
    public static void main (String[] args)
    {
        int choice;
        String item;
        double costper;
        ArrayList <String> Items = new ArrayList <String> (); 
        Items.add ("computer");
        Items.add ("Monitor");
        Items.add ("Color Printer");
        Items.add ("Color Scanner");
        Items.add ("DVD/CDROM");
        Items.add ("To Quit");

        ArrayList <Integer> Num = new ArrayList <Integer> ();
        Num.add (0);
        Num.add (1);
        Num.add (2);
        Num.add (3);
        Num.add (4);
        Num.add (5);

        System.out.println ("\t\tMy Super Computer Store\n");
        int index=0;
        int endex= 0;
        while (index …
Run Code Online (Sandbox Code Playgroud)

java while-loop

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

如何在java中显示50位数或更多(例如乘法)?

我有项目要求我用java设计一个计算器,我应该为用户选择显示50位数字或100位数字的chioices.

如你所知,当我进行乘法运算或任何其他大数字运算时,问题不会显示所有数字,它将显示大约20位数,左侧将显示为E(某个数字)!

我试着用BigDecimalDecimalFormat,但我没能解决它.

java calculator digits

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

字符串操作中的双重自由错误

如果长字符串通过,则获得以下代码的双倍空闲.我尝试过各种各样的事情.如果我删除了自由线,它会消失.不知道为什么会这样.

void format_str(char *str1,int l,int o) {
    char *s = malloc(strlen(str1)+1);
    char  *s1=s, *b = str1;
    int i=0;
    while(*str1!='\0') {
        i++;
        *s1++=*str1++;

        if(i>=l) {
            if(*str1!=',') {
                continue;
            }
        *s1++=*str1++;
            *s1++='\n';
            for(i=0;i<o;i++) {
                *s1++=' ';
            }
            i = 0;
        }
    }
    *s1 = '\0';
    strcpy(b,s);
    free(s);
}
Run Code Online (Sandbox Code Playgroud)

c string malloc

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