gpt4 book ai didi

c - 将 const char * 传递给 C 中的函数

转载 作者:行者123 更新时间:2023-12-02 21:44:02 26 4
gpt4 key购买 nike

我正在尝试编写一个以 const char * 作为参数的函数,但我不知道如何以有用的方式将此类数据传递给函数。如果我有功能:

void tokenize(const char * c) { }

我想用硬编码值调用这个函数,比如反斜杠,解决这个问题的最佳方法是什么?如何将硬编码值转换为 const char *

最佳答案

使用字符串文字代替 const char * 参数是完全合法的:

tokenize("\\");

一个更具说明性的示例是存储指向该字符串的指针,然后传递该指针:

const char *token = "\\";
tokenize(token);

但是,字符串文字与 char * 不兼容,即使编译器可能允许。这与字符串文字的存储方式有关 - 它们通常位于内存的只读区域中,尝试写入它们将导致未定义的行为,很可能是某种保护错误。

关于c - 将 const char * 传递给 C 中的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19863044/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com