小编alk*_*alk的帖子

十六进制的无符号长整数的值是多少

我有这个变量

unsigned long long latitude = 29.47667;
Run Code Online (Sandbox Code Playgroud)

当我将此值转换为这样的数组时

    ar[7] = (uint8_t)((latitude >> 56) & 0xFF);
    ar[6] = (uint8_t)((latitude >> 48) & 0xFF);
    ar[5] = (uint8_t)((latitude >> 40) & 0xFF);
    ar[4] = (uint8_t)((latitude >> 32) & 0xFF);
    ar[3] = (uint8_t)((latitude >> 24) & 0xFF);
    ar[2] = (uint8_t)((latitude >> 16) & 0xFF);
    ar[1] = (uint8_t)((latitude >> 8) & 0xFF);
    ar[0] = (uint8_t)(latitude & 0xFF);
Run Code Online (Sandbox Code Playgroud)

然后使用tcp socket将其发送到服务器.当我发送时,我以十六进制打印值,然后我0x1d全部休息.

如何在将unsigned long long转换为int时将确切的值发送到服务器.

c embedded floating-point printf

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

基本While循环不打印任何内容

我正在尝试在C中创建一个while循环,它表示构建成功,但它不打印任何东西.我真的没看到什么错,它在控制台中没有显示任何内容.

int main()
{
  int w = 0;
  while (w >=100){
    printf("w = %i" , w);
    w++;
  }
  return 0; 
}
Run Code Online (Sandbox Code Playgroud)

c while-loop logical-operators

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

宏 - 表达式不可分配

编译时出现此错误:

macro.c:11:2: error: expression is not assignable
    ProdottoAumentato(10, 20);
Run Code Online (Sandbox Code Playgroud)

我不知道为什么会这样说,我找不到任何错误.这是代码:

#include <stdlib.h>
#include <unistd.h>
#include <stdio.h>

#define ProdottoAumentato(X, Y)    X++; X * Y;

int main(void) {

    ProdottoAumentato(10, 20);

    printf("\nEnd\n");
    return(0);
}
Run Code Online (Sandbox Code Playgroud)

c macros c-preprocessor

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

如何通过套接字发送int?

我正在使用 C++ 学习非常基本的套接字编程,但我陷入了尝试通过套接字发送随机生成的 int 的部分。

服务器.cpp

int code = rand();
send(connfd, (char*)code, sizeof(int), 0);
Run Code Online (Sandbox Code Playgroud)

客户端.cpp

int code = 0;
recv(connfd, (char*)code, sizeof(int), 0);
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?

c++ sockets

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

从函数返回结构?

我这边有问题

typedef struct
{
  int hours;
  int minutes;
  int seconds; 
} Time;

Time calcTime(Time time1, Time time2)
{
    Time calc1;
    Time calc2;

    calc1.hours - calc2.hours;

    return calc1; // How do I print this outside the function?
}
Run Code Online (Sandbox Code Playgroud)

如何打印calc1.seconds OUTSIDE函数?

c

-3
推荐指数
1
解决办法
158
查看次数

内存读取没有malloc

我写了一个C程序如下:

void foo(int *a) {
  if (a[1000] == a[1000]) {
    printf("Hello");
  } 
}

int main() {
  int *a;
  foo(a);
  return 0;
}
Run Code Online (Sandbox Code Playgroud)

我期待这个程序崩溃,因为我没有在&a [1000]分配内存,但程序实际上没有崩溃并打印"Hello".我用命令编译了程序

gcc -O0 foo.c
Run Code Online (Sandbox Code Playgroud)

可能是什么原因?

c memory-management compiler-optimization undefined-behavior

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

为什么const char INITIAL ='G'不是赋值语句?

我在理解这个陈述时遇到了问题.我不知道为什么这和其他人不一样.

c c++ initialization variable-assignment

-3
推荐指数
1
解决办法
113
查看次数

为什么结构的sizeof大于其各部分的总和?

       typedef struct{
       short age;
       int money;
       char c; 
       }Persoana;   

       int main(void){
       Persoana *a = malloc(sizeof(Persoana));
       printf("%ld   %ld",sizeof(a->money),sizeof(a->age));
       printf("   %ld\n",sizeof(*a));   } ~
Run Code Online (Sandbox Code Playgroud)

代码打印"4212".4和2都可以,但如何如此12 ???

c

-4
推荐指数
1
解决办法
706
查看次数

如何在linux中使用C分配大型数组

有没有办法分配这个大小的数组:

unsigned long M[2000][900000] ;
Run Code Online (Sandbox Code Playgroud)

这是我运行程序时得到的结果(编译期间没有错误).

在此输入图像描述

Processus arrêté (Process stopped)  
Run Code Online (Sandbox Code Playgroud)

c linux memory allocation

-4
推荐指数
1
解决办法
76
查看次数

使用struct成员Substract结构成员?

为什么我不能这样做:

Time calcTime(Time time1, Time time2)
{
    Time calc1;
    Time calc2;

    calc1.hours - calc2.hours; // It won't subtract!

    printf("Result: ", calc1.hours);
}
Run Code Online (Sandbox Code Playgroud)

如果time1.hours为10且time2.hours为5,则结果应为5.但结果为10,因为减法不起作用!

c

-6
推荐指数
1
解决办法
74
查看次数

如何在C/C++中声明16位二进制位字符?

每个人都知道,如果你声明一个8位的值,你可以做类似的事情

int a = B10001110; 
Run Code Online (Sandbox Code Playgroud)

就像那个vut我不知道怎么用16位声明它,我做了类似的事情

int b = B1000000100001111; 
Run Code Online (Sandbox Code Playgroud)

但这给了我错误.我可以做些什么吗?我想要这个16位格式声明.

c c++ literals

-10
推荐指数
1
解决办法
121
查看次数