linux C语言定义字符串空指针
时间: 2023-12-20 11:06:34 浏览: 82
在 C 语言中,可以使用以下方式定义一个字符串空指针:
```c
char *str = NULL;
```
这里的 `char` 表示字符串中每个字符的数据类型,`*` 表示指针变量的声明,`str` 是指针变量的名称,`NULL` 是一个表示空指针的宏定义。
相关问题
linux c 从字符串最后开始找,找到第一个‘-’
在Linux C语言中,如果你想从字符串的最后一个字符开始查找,直到找到第一个'-'为止,你可以使用`strrchr`函数。这个函数在C标准库中定义在`string.h`头文件里,它接受两个参数:指向字符串的指针和要查找的目标字符。
下面是一个简单的示例:
```c
#include <stdio.h>
#include <string.h>
char* find_minus(const char* str) {
if (str == NULL) {
return NULL; // 如果字符串为空或NULL,则返回NULL
}
char* last_char = strrchr(str, '-'); // 从最后一个字符开始查找'-'字符
return last_char;
}
int main() {
const char* test_str = "example-string-with-a-minus-";
char* result = find_minus(test_str);
if (result != NULL) {
printf("The first '-' is at position %lu\n", (unsigned long)(result - str));
} else {
printf("No '-' found in the string.\n");
}
return 0;
}
```
在这个例子中,`find_minus`函数会返回找到的第一个'-'的指针,如果没有找到则返回`NULL`。如果找到了,通过计算`result - str`可以得到该字符相对于原字符串的位置(注意这是字符间的偏移量,不是字节)。
阅读全文