c - 如何在不对变量本身进行任何更改的情况下检查 char 指针变量的第一个字符

标签 c string

例如,我想检查 char 指针变量的第一个字符是否为 A。我根本不想更改 char 指针变量,我只想检查第一个字符。

最佳答案

可以轻松地根据值检查指针所指向的字符开头的第一个字符。事实上,即使指针仅指向单个字符,这也会起作用:

 int main()
 {
   char *A;

   A = malloc(1);
   *A = 'A';
   if('A' == *A) { printf("A was the first character\n");
   return 0;
 }

或者,您可以将其视为数组来完成相同的操作:

 int main()
 {
   char A[]="A string of characters";

   if('A' == A[0]) { printf("A was the first character\n");
   return 0;
 }

关于c - 如何在不对变量本身进行任何更改的情况下检查 char 指针变量的第一个字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35165211/

相关文章:

c - 为什么这个更快?提交 1 与提交 2

C 缓冲区和混淆,初学者

C++:无法使用类型为 'char**' 的右值初始化类型为 'char*[x]' 的变量

c - 为什么 G_DEFINE_INTERFACE 会触发 "expected declaration specifiers"编译器错误?

java - 有效/无效的非 ASCII 字符和无效的 ASCII 字符

Python - 从字符串中删除前 5 个字符 - 如何获取新的较短字符串?

java - 将字符串(最多 10 个字符)打印为菱形

java - 什么是弱全局引用?它与全局引用有何不同?

c - 使用递归删除给定数字倍数的节点【C 编程】

c - 多次递归调用的时间复杂度是多少?