如何在C中将字符串作为参数传递给线程

狗狗

我是C和编程的新手,我正在尝试将字符串传递给线程,以便稍后进行操作。我尝试使用数组创建字符串char string[] = "word"并将其传递给线程-现在是char *word = "word"没有运气的指针如何将字符串作为参数传递给线程?

#include <stdio.h>
#include <stdlib.h> // exit calls
#include <pthread.h> // contains thread package

void *print_string_in_reverse_order(void *str)
{
    char *string = (char *)str;
    printf("%s\n", *string); // this won't print anything

    pthread_exit(NULL); // exit the thread
}

int main(int argc, char *argv[])
{
    pthread_t threadID;
    char *word = "word"; //should this be an array?
    printf("In function main(): Creating a new thread\n");

    // create a new thread in the calling process
    int status = pthread_create(&threadID, NULL, print_string_in_reverse_order, (void *)&word);

}
多伦

您的问题是使用时将指针传递给指向字符串的指针,&word您只需要wordpthread_create参数中使用即可

这是因为当您声明

const char* word = "my word";

“我的世界”的内存在只读全局内存中分配,word然后a成为指向堆栈上该内存的指针。请注意,即使不声明word为const,也无法修改字符串。

const char word[] = "my word";

创建一个大数组来表示“我的话”。通常,传递给另一个线程是不安全的,因为删除了内存,然后在函数末尾展开堆栈。

声明可修改字符串的最简单安全方法是声明以下内容:

static char word[] = "my word";

这将确保“我的话”位于全局内存中并且肯定可用,否则您将需要使用以下方式分配内存 malloc

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在Powershell中将字符串作为非字符串传递给命令?

来自分类Dev

如何在Django中将python字符串作为字符串传递给javascript?

来自分类Dev

如何在C ++中将字符串的动态二维数组作为参数传递

来自分类Dev

如何在MVC 5中将字符串作为模型传递给视图?

来自分类Dev

如何在C#中创建将<this>类的字符串属性作为参数传递给它的Lazy属性?

来自分类Dev

如何在视图中将字符串参数传递给url?

来自分类Dev

如何在VBA中将动态字符串参数传递给选择案例?

来自分类Dev

如何在Python中将字符串传递给函数

来自分类Dev

如何在Handlebars帮助器表达式中将字符串作为参数传递?

来自分类Dev

如何在glShaderSource中将字符串作为GLchar **(char **)参数传递?

来自分类Dev

我如何在鱼壳中将函数参数作为字符串传递

来自分类Dev

如何在CAPL中将字符串作为用户定义的函数参数传递

来自分类Dev

如何使用C#在Python中将字符串作为命令行参数传递

来自分类Dev

如何在C++中将字符串传递给gets_s()?

来自分类Dev

如何在命令行中将参数传递给文件并使用python更改文件中的字符串?

来自分类Dev

批处理 - 如何在作为参数传递给子程序的字符串中回显感叹号?

来自分类Dev

如何在ASP.NET Core API控制器中将URL中的字符串作为参数传递

来自分类Dev

角度多参数,作为字符串传递给nodejs

来自分类Dev

将字符串作为键参数传递给函数

来自分类Dev

将空格字符串作为参数传递给函数

来自分类Dev

将字符串作为参数传递给 python 脚本

来自分类Dev

在SQL命令中将字符串作为datetime参数传递

来自分类Dev

在dplyr动词中将字符串作为参数传递

来自分类Dev

在ddply中将字符串作为参数传递

来自分类Dev

在bash中将字符串或数组作为参数传递

来自分类Dev

在函数中将字符串数组作为输入参数传递

来自分类Dev

在R中将字符串作为参数传递

来自分类Dev

在Powershell中将字符串变量作为参数传递

来自分类Dev

在方法重载中将字符串作为参数传递

Related 相关文章

  1. 1

    如何在Powershell中将字符串作为非字符串传递给命令?

  2. 2

    如何在Django中将python字符串作为字符串传递给javascript?

  3. 3

    如何在C ++中将字符串的动态二维数组作为参数传递

  4. 4

    如何在MVC 5中将字符串作为模型传递给视图?

  5. 5

    如何在C#中创建将<this>类的字符串属性作为参数传递给它的Lazy属性?

  6. 6

    如何在视图中将字符串参数传递给url?

  7. 7

    如何在VBA中将动态字符串参数传递给选择案例?

  8. 8

    如何在Python中将字符串传递给函数

  9. 9

    如何在Handlebars帮助器表达式中将字符串作为参数传递?

  10. 10

    如何在glShaderSource中将字符串作为GLchar **(char **)参数传递?

  11. 11

    我如何在鱼壳中将函数参数作为字符串传递

  12. 12

    如何在CAPL中将字符串作为用户定义的函数参数传递

  13. 13

    如何使用C#在Python中将字符串作为命令行参数传递

  14. 14

    如何在C++中将字符串传递给gets_s()?

  15. 15

    如何在命令行中将参数传递给文件并使用python更改文件中的字符串?

  16. 16

    批处理 - 如何在作为参数传递给子程序的字符串中回显感叹号?

  17. 17

    如何在ASP.NET Core API控制器中将URL中的字符串作为参数传递

  18. 18

    角度多参数,作为字符串传递给nodejs

  19. 19

    将字符串作为键参数传递给函数

  20. 20

    将空格字符串作为参数传递给函数

  21. 21

    将字符串作为参数传递给 python 脚本

  22. 22

    在SQL命令中将字符串作为datetime参数传递

  23. 23

    在dplyr动词中将字符串作为参数传递

  24. 24

    在ddply中将字符串作为参数传递

  25. 25

    在bash中将字符串或数组作为参数传递

  26. 26

    在函数中将字符串数组作为输入参数传递

  27. 27

    在R中将字符串作为参数传递

  28. 28

    在Powershell中将字符串变量作为参数传递

  29. 29

    在方法重载中将字符串作为参数传递

热门标签

归档