小编RBe*_*eig的帖子

使用strtok()在c中将字符串标记两次

strtok()在c中使用来解析csv字符串.首先我将它标记为只是找出有多少令牌,这样我就可以分配一个正确大小的字符串.然后我使用上次用于标记化的相同变量.每次我第二次这样做虽然它strtok(NULL, ",")返回,NULL即使还有更多的令牌需要解析.谁能告诉我我做错了什么?

char* tok;
int count = 0;
tok = strtok(buffer, ",");
while(tok != NULL) {
    count++;
    tok = strtok(NULL, ",");
}

//allocate array

tok = strtok(buffer, ",");
while(tok != NULL) {
    //do other stuff
    tok = strtok(NULL, ",");
}
Run Code Online (Sandbox Code Playgroud)

所以在第二个while循环中它总是在找到第一个标记后结束,即使有更多的标记.有人知道我做错了什么吗?

c csv tokenize strtok

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

无法在Lua模式中使用百分比(%)

我在Lua脚本中有这一行,每次都会崩溃我的软件:

fmt_url_map = string.gsub( fmt_url_map, '%2F','/' )
Run Code Online (Sandbox Code Playgroud)

我想替换%2F文本中出现的所有事件/.如果我删除%,它不会崩溃.

我究竟做错了什么 ?

lua

8
推荐指数
2
解决办法
4006
查看次数

对象如何在Lua中引用自身?

C#有this和VB有ME.什么是Lua等价物?

我试图在Roblox中引用脚本类的父级.

oop lua roblox

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

Lua vs PHP/Python/JSP/etc.

我即将开始我的下一个Web开发项目,并希望了解Lua在Web开发领域的优点.

Lua如何比较PHP/Python/JSP/etc ..用于Web开发?

任何理由为什么Lua会成为Web应用程序语言与其他语言的不良选择?

php python lua web-applications

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

Lua变量是否在脚本调用之间失去了价值?

在我调用Lua脚本的C应用程序中,当我稍后再次调用脚本时,代码中的变量是否保持相同的值?

variables scripting lua

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

剥去坏的Windows文件名字符

我发现这个函数测试一个字符串是Windows文件名和文件夹友好:

function is_valid_filename($name) {
    $parts=preg_split("/(\/|".preg_quote("\\").")/",$name);
    if (preg_match("/[a-z]:/i",$parts[0])) {
       unset($parts[0]);
    }
    foreach ($parts as $part) {
        print "part = '$part'<br>";
       if (preg_match("/[".preg_quote("^|?*<\":>","/")."\a\b\c\e\x\v\s]/",$part)||preg_match("/^(PRN|CON|AUX|CLOCK$|NUL|COMd|LPTd)$/im",str_replace(".","\n",$part))) {
          return false;
       }
    }
    return true;
 }
Run Code Online (Sandbox Code Playgroud)

我宁愿拥有的是一个从字符串中删除所有不良内容的函数.我试着基本上用preg_replace替换preg_match但没有雪茄.

php regex

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

怎么做{} while(0)在宏中工作?

虽然本论坛和所有其他论坛多次讨论过这个话题,但我仍有疑问.请帮忙.

do{} while(0)in-macro 如何在Linux内核中工作?例如,

#define preempt_disable()    do { } while (0)
Run Code Online (Sandbox Code Playgroud)

它如何禁用抢占?

#define might_resched()    do { } while (0)
Run Code Online (Sandbox Code Playgroud)

它是如何重新安排的?

类似地,我已经看到了互斥锁和其他宏的宏.这有什么用?我理解以下问题,但不是上面的例子.

#define foo(x)    do { do something } while(0)
Run Code Online (Sandbox Code Playgroud)

编辑:

以下代码怎么样rt_mutex_lock

/**
 * rt_mutex_lock - lock a rt_mutex
 *
 * @lock: the rt_mutex to be locked
 */
void __sched rt_mutex_lock(struct rt_mutex *lock)
{
        might_sleep();
        rt_mutex_fastlock(lock, TASK_UNINTERRUPTIBLE, 0, rt_mutex_slowlock);
}
EXPORT_SYMBOL_GPL(rt_mutex_lock);


/*
 * debug aware fast / slowpath lock,trylock,unlock
 *
 * The atomic acquire/release ops are compiled away, …
Run Code Online (Sandbox Code Playgroud)

c do-while

7
推荐指数
2
解决办法
2020
查看次数

什么是一个良好的开源轻量级c库,具有在嵌入式系统中使用的基本实用程序功能

我正在考虑像glib这样的东西,但可能是一个具有最小脚印的纤薄版本.它需要基本的实用程序,如链表,向量和哈希表.它还应具有最小的运行时占用空间.

c embedded

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

对于具有字段double d = 2.2250738585072012e-308的类,编译挂起

我遇到了一个有趣的情况.同事提交了一些更改,这些更改无法在我的计算机上从IDE(Eclipse)或命令行(Maven)进行编译.在编译过程中出现的问题表现在100%CPU并且只杀死进程将有助于阻止它.经过一些分析后,找到并解决了问题的原因.事实证明,其中一个接口是"双d = 2.2250738585072012e-308"(最后没有分号).以下剪辑重复了它.

public class WeirdCompilationIssue {
   double d = 2.2250738585072012e-308
}
Run Code Online (Sandbox Code Playgroud)

为什么编译器会挂起?一个语言边缘案例?

java compilation javac

7
推荐指数
2
解决办法
932
查看次数

调用Lua函数

我想在Lua和C中处理以下代码:

假设我有一个命名为C函数的FooLu 函数.我称之为Lua脚本中的跟随:

Foo(15, "bar", function(z) return 2 * z + 1 end)
Run Code Online (Sandbox Code Playgroud)

在C方面,我检索参数,我可以在我的结构中存储数字和字符串.但是我需要哪种数据类型来存储匿名函数?我怎么以后再打电话呢?

c api lua

7
推荐指数
2
解决办法
1870
查看次数

标签 统计

lua ×5

c ×4

php ×2

api ×1

compilation ×1

csv ×1

do-while ×1

embedded ×1

java ×1

javac ×1

oop ×1

python ×1

regex ×1

roblox ×1

scripting ×1

strtok ×1

tokenize ×1

variables ×1

web-applications ×1