小编Nul*_*ion的帖子

printf()打印整个数组

假设我的C程序中有以下代码:

#include <stdio.h>

void PrintSomeMessage( char *p );

int main(int argc, char *argv[]) {
    char arr[10] = "hello";
    PrintSomeMessage(&arr[0]);
    return 0;   
}

void PrintSomeMessage(char *p)
{
    printf("p: %s",p);
}
Run Code Online (Sandbox Code Playgroud)

为什么输出这个单词"hello"而不是单个字符"h"?

但我明白,如果我"%c"在格式化程序中添加一个,它只会打印一个字母.但是,此地址中每个字母的内存地址不同.请有人向我解释一下吗?

c arrays printf char

11
推荐指数
2
解决办法
12万
查看次数

Android textColor选择器

我正在尝试TextView使用以下代码为textColor 设置一个选择器:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_enabled="false" android:color="?android:attr/textColorTertiary" />
    <item android:color="?android:attr/textColorPrimary"/>
</selector>
Run Code Online (Sandbox Code Playgroud)

但是,颜色似乎总是red代替那些theme colors.如果我把硬编码的颜色,一切似乎都很好.(例如<item android:state_enabled="false" android:color="#666666" />).

有什么问题以及如何解决?PS如果任何人知道如何设置列表中禁用的项目主题的默认禁用颜色,请分享,这就是我想要的目的.谢谢.

android android-layout android-listview android-theme

5
推荐指数
1
解决办法
1172
查看次数

为什么C程序崩溃了?

请有人解释为什么以下C程序崩溃:

void changeChar(char *string);

int main(int argc, char *argv[])
{
  char *test = "word";
  changeChar(test);
  return 0;
}

void changeChar(char *string) {
  *string = 'A';
}
Run Code Online (Sandbox Code Playgroud)

而以下代码完美地运作:

void changeChar(char *string);

int main(int argc, char *argv[])
{
  char test[] = "word";
  changeChar(test);
  return 0;
}

void changeChar(char *string) {
  *string = 'A';
}
Run Code Online (Sandbox Code Playgroud)

c string pointers string-literals

-2
推荐指数
2
解决办法
136
查看次数